Атрибут свойства SetAccess
позволяет вам определить, при каких условиях код может изменить значения свойства объекта. Существует четыре уровня доступа к набору, которые обеспечивают различные степени доступа к значениям свойства объекта:
SetAccess = public
— Любой код с доступом к объекту может установить значения общественной собственности. Существуют различия между поведением указателя и классами значения относительно изменения свойств объектов.
SetAccess = protected
— Только код, выполняющийся из методов класса или методов подклассов, может установить значения свойств. Вы не можете изменить значение свойства объекта, если класс или любой из его подклассов не задают метод, чтобы сделать так.
SetAccess = private
— Только класс определения может установить значения свойств. Можно изменить значение свойства объекта, только если класс задает метод, который устанавливает свойство.
SetAccess = immutable
— Значение свойства установлено во время конструкции. Вы не можете изменить значение неизменяемого свойства после того, как объект будет создан. Установите значение свойства как значение по умолчанию или в конструкторе класса.
В этом определении класса только конструктор класса Immute
может установить значение свойства CurrentDate
:
classdef Immute properties (SetAccess = immutable) CurrentDate end methods function obj = Immute obj.CurrentDate = date; end end end
a = Immute
a = Immute with properties: CurrentDate: '19-Oct-2005'