Sobes.tech
Junior — Middle

Как се реализира обект, чиито свойства не могат да бъдат променяни след създаването му?

sobes.tech AI

Отговор от AI

В Flutter (Dart) за създаване на обект с неизменяеми свойства обикновено се използва ключовата дума final за полетата на класа. Това означава, че стойността на свойството може да бъде зададена само веднъж — при създаването на обекта. Може също да създадете клас с конструктор, който инициализира всички полета и не предоставя сетъри.

Пример:

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 и да имат константни стойности.