Для обзора методов доступа свойства см. Методы доступа к свойствам.
Вызовы MATLAB® свойство получает метод каждый раз, когда значение свойства запрошено.
Вы не можете вызвать методы доступа свойства непосредственно. MATLAB вызывает эти методы когда вы доступ к значениям свойств.
Свойство добирается, методы имеют следующий синтаксис, где PropertyName
является именем свойства. Функция должна возвратить значение свойства.
methods function value = get.PropertyName(obj) ... end
Класс SquareArea
задает зависимое свойство Area
. MATLAB не хранит значение для зависимого свойства Area
. То, когда вы запрашиваете значение свойства Area
, MATLAB вызывает метод get.Area
, вычисляет значение на основе свойств Width
и Height
.
classdef SquareArea properties Width Height end properties (Dependent) Area end methods function a = get.Area(obj) a = obj.Width * obj.Height; end end end
Отображение объекта значения по умолчанию MATLAB подавляет сообщения об ошибке, возвращенные в свойство, получают методы. MATLAB не позволяет ошибку, выпущенную свойством, заставляют метод предотвращать отображение целого объекта.
Используйте метод набора свойств, чтобы подтвердить значение свойства. Проверка значения при установке свойства гарантирует, что объект находится в допустимом состоянии. Использование свойство заставляет метод только возвращать значение, которое подтвердил метод установки.
MATLAB НЕ вызывает свойство, получают методы в следующих случаях:
Получение значения свойства из его собственного свойства получает метод, который предотвращает рекурсивный вызов получить метода
Копирование объекта значения (то есть, не выведенный от класса handle
). Ни один набор или получает метод, не называется при копировании значений свойств от одного объекта до другого.