Как я могу сделать объект неизменяемым в flex

#apache-flex

#apache-flex

Вопрос:

У меня есть объект конфигурации в моем приложении flex3.5. Я хочу, чтобы этот объект был неизменяемым, чтобы никто не мог изменить в нем какое-либо свойство после его создания.

Ответ №1:

Если вы говорите об общем Object , это невозможно, поскольку оно динамическое. Что вы хотите сделать, это создать класс, который имеет только функции ‘getter’, и каждое свойство указано в конструкторе.

Если вы хотите, чтобы он по-прежнему был привязан, посмотрите мой пост в блоге о свойствах, доступных только для чтения с возможностью привязки.

Ответ №2:

Используйте методы get / set. Может быть две стратегии:

  1. Частные переменные инициализируются внутри самого класса, и каждая частная переменная имеет общедоступный get-метод, который делает общедоступное поле доступным только для чтения.
  2. Если вам нужно установить значения извне, вы должны создать set-методы и выдать ошибку, если значение уже установлено.