Junior — Middle
Могу ли се методи или својства у језику Dart преоптеретити?
sobes.tech АИ
Одговор од АИ
Da, u jeziku Dart moguće je prepisivati metode i svojstva u klasama koje nasleđuju.
Za to, u podklasi treba deklarisati metodu ili getter/setter sa istim imenom kao u osnovnoj klasi. Preporučuje se korišćenje anotacije @override za jasno označavanje prepisivanja.
Primer:
class Animal {
void speak() {
print('Zvuk životinje');
}
String get name => 'Životinja';
}
class Dog extends Animal {
@override
void speak() {
print('Lajanje');
}
@override
String get name => 'Pas';
}
void main() {
var dog = Dog();
dog.speak(); // Ispisaće: Lajanje
print(dog.name); // Ispisaće: Pas
}
Na ovaj način, Dart podržava prepisivanje metoda i svojstava za implementaciju polimorfizma.