Классы перечисления ограничивают определенные аспекты своего использования и определения:
Классами перечисления является неявно Sealed
. Вы не можете задать подкласс класса перечисления, потому что выполнение так расширило бы набор.
Свойства основанных на значении классов перечисления являются неизменяемыми. Только конструктор может присвоить значения свойств. MATLAB® неявно задает SetAccess
атрибуты всех свойств заданы основанными на значении классами перечисления как immutable
. Вы не можете установить SetAccess
припишите любому другому значению.
Все свойства, наследованные основанным на значении классом перечисления, которые не заданы как Constant
должен иметь immutable
SetAccess
.
Свойства основанных на указателе классов перечисления изменяемы. Можно установить значения свойств на экземплярах класса перечисления. Смотрите Изменяемый Указатель по сравнению с Неизменяемыми участниками Перечисления Значения.
У участника перечисления не может быть того же имени как свойство, метод или событие, заданное тем же классом.
Перечисления не поддерживают двоеточие (a:b
) операции. Например, FlowRate.Low:FlowRate.High
вызывает ошибку даже если FlowRate
класс выводит из числового суперкласса.
Классы, которые задают перечисления, не могут ограничить свойства того же класса к перечисляемому типу. Создайте отдельный класс перечисления, чтобы ограничить значения свойств перечислением. Для получения информации об ограничении значений свойств смотрите Пример Ограниченного Свойства.