Junior — Middle
Átírhatók-e módszerek vagy tulajdonságok a Dart nyelvben?
sobes.tech MI
Válasz az MI-től
Igen, a Dart nyelvben lehetőség van módszerek és tulajdonságok felülírására az öröklődő osztályokban.
Ehhez az alosztályban ugyanazzal a névvel kell deklarálni egy metódust vagy getter/setter-t, mint az alap osztályban. Ajánlott az @override annotáció használata a felülírás egyértelmű jelölésére.
Példa:
class Animal {
void speak() {
print('Állati hang');
}
String get name => 'Állat';
}
class Dog extends Animal {
@override
void speak() {
print('ugat');
}
@override
String get name => 'Kutya';
}
void main() {
var dog = Dog();
dog.speak(); // Kiírja: ugat
print(dog.name); // Kiírja: Kutya
}
Így a Dart támogatja a módszerek és tulajdonságok felülírását a polimorfizmus megvalósításához.