Синтаксис свойств

Блок определения свойств

Следующий рисунок показывает типичную спецификацию свойства. 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 функция.

Похожие темы