Sobes.tech
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.