Следующий рисунок показывает типичную спецификацию свойства. properties
и end
ключевые слова формируют рисунок блока кода, который задает свойства, имеющие те же настройки атрибута.
Примечание
Свойства не могут иметь того же имени как класс.
Для примера смотрите Создание Простого Класса.
Предыдущий пример показывает Coefficients
свойство, заданное как наличие значения по умолчанию [0 0 1]
.
Можно инициализировать значения свойств MATLAB® выражения. Однако эти выражения не могут относиться к классу, который вы задаете в любом случае, кроме вызвать статические методы класса. MATLAB выполняет выражения, которые создают начальные значения свойств только при инициализации класса, который происходит непосредственно перед первым использованием класса. Смотрите Значения свойства по умолчанию для получения дополнительной информации о том, как MATLAB выполняет выражения значения по умолчанию.
Имена свойства должны быть перечислены на отдельных линиях. MATLAB интерпретирует имя после имени свойства как имя класса.
Можно ограничить значения свойств путем соединения класса со свойством в определении свойства. Например, определение MyData
требует, чтобы значения, присвоенные этому свойству, имели тип int32
или типы, которые совместимы с int32
.
properties MyData int32 end
Для получения дополнительной информации см. Проверку значений свойств.
Синтаксис доступа к свойству похож на полевой синтаксис структуры MATLAB. Например, если obj
объект класса, затем можно получить значение свойства путем ссылки на имя свойства:
val = obj.PropertyName
Присвойте значения свойствам путем помещения ссылки свойства на левой стороне знака "равно":
obj.PropertyName = val
Когда вы получаете доступ к свойству, MATLAB выполняет любой набор свойств, или получите метод доступа и инициировавший любые активированные события свойства.
Когда вы выводите один класс из другого класса, выведенный (подкласс), класс наследовал все свойства суперкласса. В общем случае подклассы задают только свойства, которые уникальны для того конкретного класса. Суперклассы задают свойства, которые используются больше чем одним подклассом.
Атрибуты заданы с properties
ключевое слово применяется ко всем определениям свойства, которые следуют в том блоке. Если вы хотите применить настройки атрибута к определенным свойствам только, снова используйте properties
ключевое слово и создает другой блок свойства для тех свойств.
Например, следующий код показывает SetAccess
припишите набор private
для IndependentVar
и Order
свойства, но не для Coefficients
свойство:
Для получения информации о свойствах определенного класса используйте properties
функция.