Опишите класс MATLAB
Экземпляры класса meta.class
содержат информацию о классах MATLAB®. Свойства чтения/записи класса meta.class
соответствуют атрибутам класса и установлены только из определений классов на строке classdef
. Можно запросить свойства только для чтения объекта meta.class
получить информацию, которая задана синтаксически классом (например, чтобы получить имя класса).
Вы не можете инстанцировать объекта meta.class
непосредственно. Можно создать объект meta.class
из экземпляра класса или использования имени класса:
метакласс
возвращается объект meta.class
, представляющий объект, передал в качестве аргумента.
ClassName
возвращает объект
meta.class
, представляющий именованный класс.
fromName
— статический метод возвращает объект meta.class
, представляющий именованный класс.
Например, функция metaclass
возвращает объект meta.class
, представляющий MyClass
.
ob = MyClass; obmeta = metaclass(ob); obmeta.Name
ans = MyClass
Можно использовать имя класса, чтобы получить объект meta.class
:
obmeta = ?MyClass;
Можно также использовать статический метод fromName
:
obmeta = meta.class.fromName('MyClass');
Свойство | Цель |
---|---|
Атрибут | Если Для получения дополнительной информации см. Абстрактные классы. |
Атрибут ConstructOnLoad , значение по умолчанию = false | Если |
ContainingPackage , только для чтения | Объект |
Description , только для чтения | В настоящее время не используемый. |
DetailedDescription , только для чтения | В настоящее время не используемый. |
Атрибут Enumeration , значение по умолчанию = false | Если |
EventList , только для чтения | Массив объектов |
Events , только для чтенияИспользуйте | Массив ячеек объектов |
EnumerationMemberList | Массив объектов Смотрите Перечисления для получения дополнительной информации о классах перечисления. |
EnumeratedValues , только для чтения Используйте | Массив ячеек объектов Смотрите Перечисления для получения дополнительной информации о классах перечисления. |
Атрибут Hidden , значение по умолчанию = false | Если установлено в true , класс не появляется в выводе команд MATLAB или инструментов то отображение имена классов. |
Атрибут InferiorClasses , значение по умолчанию = {} | Массив ячеек объектов Смотрите приоритет класса |
MethodList , только для чтения | Массив объектов |
Methods , только для чтения Используйте | Массив ячеек объектов |
Name , только для чтения | Имя класса сопоставлено с этим объектом meta.class (массив char ) |
PropertyList , только для чтения | Массив объектов |
Properties , только для чтения Используйте | Массив ячеек объектов |
| Если класс не является |
Атрибут Sealed , значение по умолчанию = false | Если |
SuperClassList , только для чтения | Массив объектов |
SuperClasses , только для чтения Используйте | Массив ячеек объектов |
Метод | Цель |
---|---|
fromName | Возвращает объект meta.class , сопоставленный с заданным именем класса. |
tf = eq(Cls) | Функция равенства (a == b ). Используйте для теста, если две переменные относятся, чтобы равняться классам (классы, которые содержат точно тот же список элементов). |
tf = ne(Cls) | Не равняются функции (a ~= b ). Используйте для теста, если две переменные относятся к различным метаклассам. |
tf = lt(ClsA,ClsB) | Меньше, чем функция (ClsA < ClsB ). Используйте, чтобы определить, является ли ClsA строгим подклассом ClsB (i. e., строгий подкласс означает, что ClsX < ClsX является false ). |
tf = le(ClsA,ClsB) | Меньше чем или равный функции (ClsA <= ClsB ). Используйте, чтобы определить, является ли ClsA подклассом ClsB . |
tf = gt(ClsA,ClsB) | Больше, чем функция (ClsA > ClsB ). Используйте, чтобы определить, является ли ClsA строгим суперклассом ClsB (i. e., строгий суперкласс означает, что ClsX > ClsX является false ). |
tf = ge(ClsA,ClsB) | Больше, чем или равный функции (ClsA >= ClsB ). Используйте, чтобы определить, является ли ClsA суперклассом ClsB . |
Событие | Цель |
---|---|
| Если класс является классом Handle, это событие имеет место каждый раз, когда новый экземпляр этого класса Handle создается, включая новые экземпляры любых подклассов. Событие сразу имеет место после того, как все функции конструктора заканчивают выполняться. |
| Если класс является классом Handle, это событие имеет место каждый раз, когда экземпляр этого класса Handle уничтожается, включая все подклассы. Событие сразу имеет место, прежде чем любые функции деструктора выполняются. |
Найдите атрибуты свойства с помощью класса handle
метод findobj
и объект audioplayer
meta.class
. Определите, задает ли класс свойство под названием SampleRate
и делает это имеет общедоступный доступ к набору.
mc = ?audioplayer; mp = findobj(mc.PropertyList,'Name','SampleRate'); strcmp(mp.SetAccess,'public') ...
fromName
| meta.event
| meta.method
| meta.package
| meta. свойство