При отображении объекта MATLAB® определяет состояние объекта и вызывает соответствующий метод для этого состояния (см. «Состояния объектов, которые влияют на отображение»).
Например, предположим obj
является допустимым скалярным объектом класса, производного от CustomDisplay
. Если вы вводите obj
в командной строке без завершения оператора точкой с запятой:
>> obj
Следующая последовательность приводит к отображению obj
:
MATLAB определяет класс obj
и вызывает disp
метод для отображения объекта.
disp
вызывает size
для определения, obj
ли скаляром или нескаляром
Когда obj
является скалярным указателем объекта, disp
вызывает isvalid
для определения, obj
ли - указатель на удаленный объект. Удаленные указатели в нескалярных массивах не влияют на отображение.
disp
вызывает метод обработчика состояний для объекта состояния obj
. В этом случае obj
является допустимым скаляром, который приводит к вызову:
displayScalarObject(obj)
displayScalarObject
вызывает методы display part-builder, чтобы предоставить соответствующий заголовок, список свойств и нижний колонтитул.
... header = getHeader(obj); disp(header) ... groups = getPropertyGroups(obj) displayPropertyGroups(obj,groups) ... footer = getFooter disp(footer)
MATLAB следует аналогичной последовательности для нескалярных объектных массивов и пустых объектных массивов.
В случае скалярных указателей на удаленные объекты disp
вызывает displayScalarHandleToDeletedObject
метод, который отображает текст по умолчанию для указателей удаленных объектов без вызова каких-либо методов построителя деталей.
Следующая схема иллюстрирует методы, вызываемые для отображения объекта, который получают из CustomDisplay
. The disp
метод вызывает метод обработчика состояний, соответствующий состоянию отображаемого объекта или объектного массива.
Только образец класса handle может быть в состоянии скалярного указателя на удаленный объект.