Sobes.tech
Junior — Middle

È possibile sovrascrivere metodi o proprietà nel linguaggio Dart?

sobes.tech AI

Risposta dell'AI

Sì, nel linguaggio Dart è possibile sovrascrivere metodi e proprietà nelle classi derivate.

Per farlo, nella sottoclasse si deve dichiarare un metodo o un getter/setter con lo stesso nome di quello nella classe base. Si consiglia di usare l'annotazione @override per indicare esplicitamente la sovrascrittura.

Esempio:

class Animal {
  void speak() {
    print('Suono dell'animale');
  }

  String get name => 'Animale';
}

class Dog extends Animal {
  @override
  void speak() {
    print('Abbaio');
  }

  @override
  String get name => 'Cane';
}

void main() {
  var dog = Dog();
  dog.speak(); // Stampa: Abbaio
  print(dog.name); // Stampa: Cane
}

In questo modo, Dart supporta la sovrascrittura di metodi e proprietà per implementare il polimorfismo.