Junior — Middle
Kuidas rakendada objekti, mille omadusi pärast selle loomist muuta ei saa?
sobes.tech AI
Vastus AI-lt
Flutter (Dart) keskkonnas, et luua objekt, mille omadused on muutumatud, kasutatakse tavaliselt klassi väljade jaoks märksõna final. See tähendab, et omaduse väärtus saab määrata ainult üks kord — objekti loomisel. Samuti saab luua klassi, mille konstruktor initsialiseerib kõik väljad ja ei paku settereid.
Näide:
class User {
final String name;
final int age;
User(this.name, this.age);
}
void main() {
var user = User('Alice', 30);
// user.name = 'Bob'; // Viga, ei saa muuta
}
Kui vaja täiesti muutumatut objekti, saab kasutada const konstruktorit, kuid selleks peavad kõik väljad olema final ja omama konstantsed väärtused.