Junior — Middle
Ako sa implementuje objekt, ktorého vlastnosti nie je možné zmeniť po jeho vytvorení?
sobes.tech AI
Odpoveď od AI
V Flutter (Dart) na vytváranie objektov s nemennými vlastnosťami sa zvyčajne používa kľúčové slovo final pre polia triedy. To znamená, že hodnota vlastnosti môže byť nastavená iba raz — pri vytváraní objektu. Môžete tiež vytvoriť triedu s konštruktorom, ktorý inicializuje všetky polia a neponúka settery.
Príklad:
class User {
final String name;
final int age;
User(this.name, this.age);
}
void main() {
var user = User('Alice', 30);
// user.name = 'Bob'; // Chyba, nie je možné zmeniť
}
Ak je potrebný úplne nemenný objekt, môžete použiť konštruktor const, ale na to musia byť všetky polia final a mať konštantné hodnoty.