Sobes.tech
Junior — Middle

Mis on Extension klassi roll Dart keeles ja miks seda kasutatakse?

sobes.tech AI

Vastus AI-lt

Dart keeles, Extension klassi kasutatakse olemasolevatele tüüpidele uute meetodite ja omaduste lisamiseks ilma, et oleks vaja pärida või muuta klassi lähtekoodi.

See võimaldab laiendada standard- või kolmanda osapoole klasside funktsionaalsust, muutes koodi väljendusrikkamaks ja mugavamaks.

Näide kasutamisest:

extension NumberParsing on String {
  int toIntOrZero() {
    return int.tryParse(this) ?? 0;
  }
}

void main() {
  String s = "123";
  print(s.toIntOrZero()); // Kuvab 123
  print("abc".toIntOrZero()); // Kuvab 0
}

Sellisel viisil aitab Extension lisada kasulikke meetodeid olemasolevatele tüüpidele ilma neid muutmata.