Junior — Middle
Πώς υλοποιείται ένα αντικείμενο των οποίων οι ιδιότητες δεν μπορούν να αλλάξουν μετά τη δημιουργία του;
sobes.tech AI
Απάντηση από AI
Στο Flutter (Dart), για τη δημιουργία ενός αντικειμένου με αμετάβλητα χαρακτηριστικά, συνήθως χρησιμοποιείται η λέξη-κλειδί final για τα πεδία της κλάσης. Αυτό σημαίνει ότι η τιμή της ιδιότητας μπορεί να οριστεί μόνο μία φορά — κατά τη δημιουργία του αντικειμένου. Μπορείτε επίσης να δημιουργήσετε μια κλάση με έναν κατασκευαστή που αρχικοποιεί όλα τα πεδία και δεν παρέχει setters.
Παράδειγμα:
class User {
final String name;
final int age;
User(this.name, this.age);
}
void main() {
var user = User('Alice', 30);
// user.name = 'Bob'; // Σφάλμα, δεν μπορεί να αλλάξει
}
Αν χρειάζεται ένα πλήρως αμετάβλητο αντικείμενο, μπορείτε να χρησιμοποιήσετε έναν κατασκευαστή const, αλλά για αυτό όλα τα πεδία πρέπει να είναι final και να έχουν σταθερές τιμές.