Junior — Middle
Kas Dart keeles saab meetodeid või omadusi üle kirjutada?
sobes.tech AI
Vastus AI-lt
Jah, Dart keeles on võimalik ülekirjutada meetodeid ja omadusi pärilikes klassides.
Selleks tuleb alamklassis deklareerida meetod või getter/setter sama nimega, mis põhiklassis. Soovitatav on kasutada annotatsiooni @override, et selgelt näidata ülekirjutamist.
Näide:
class Animal {
void speak() {
print('Loomu hääl');
}
String get name => 'Loom';
}
class Dog extends Animal {
@override
void speak() {
print('Haug');
}
@override
String get name => 'Koer';
}
void main() {
var dog = Dog();
dog.speak(); // Väljund: Haug
print(dog.name); // Väljund: Koer
}
Seega toetab Dart meetodite ja omaduste ülekirjutamist polümorfismi realiseerimiseks.