Sobes.tech
Junior — Middle

Ποιος είναι ο λόγος εισαγωγής της λέξης-κλειδιού abstract στην έκδοση Dart 2.12;

sobes.tech AI

Απάντηση από AI

Η λέξη-κλειδί abstract στη Dart 2.12 εισήχθη για να δηλώνει ρητά τις αφηρημένες κλάσεις. Παλαιότερα, οι αφηρημένες κλάσεις ορίζονταν έμμεσα, π.χ., αν μια κλάση περιείχε αφηρημένες μεθόδους (χωρίς υλοποίηση). Η εισαγωγή του abstract επιτρέπει:

  • Να σημειώνεται ρητά μια κλάση ως αφηρημένη, βελτιώνοντας την αναγνωσιμότητα του κώδικα.
  • Να απαγορεύεται η δημιουργία στιγμιότυπων τέτοιων κλάσεων άμεσα.
  • Να βελτιωθεί η υποστήριξη για στατικό αναλυτή και εργαλεία ανάπτυξης.

Παράδειγμα χρήσης:

abstract class Animal {
  void makeSound(); // αφηρημένη μέθοδος
}

class Dog extends Animal {
  @override
  void makeSound() {
    print('Bark');
  }
}

Εδώ, το Animal είναι μια αφηρημένη κλάση που δεν μπορεί να δημιουργηθεί άμεσα.