Junior — Middle
Lze v jazyce Dart přepsat metody nebo vlastnosti?
sobes.tech AI
Odpověď od AI
Ano, v jazyce Dart lze přepisovat metody a vlastnosti v odvozených třídách.
Pro to je v podtřídě nutné deklarovat metodu nebo getter/setter se stejným názvem jako v základní třídě. Doporučuje se používat anotaci @override pro jasné označení přepsání.
Příklad:
class Animal {
void speak() {
print('Zvuk zvířete');
}
String get name => 'Zvíře';
}
class Dog extends Animal {
@override
void speak() {
print('Štěkání');
}
@override
String get name => 'Pes';
}
void main() {
var dog = Dog();
dog.speak(); // Vytiskne: Štěkání
print(dog.name); // Vytiskne: Pes
}
Tímto způsobem Dart podporuje přepisování metod a vlastností pro implementaci polymorfismu.