Опишите класс MATLAB
Экземпляры meta.class класс содержит информацию о классах MATLAB®. Свойства чтения/записи meta.class класс соответствует атрибутам класса и установлен только из определений классов на classdef строка. Можно запросить свойства только для чтения meta.class объект получить информацию, которая указана синтаксически классом (например, чтобы получить имя класса).
Вы не можете инстанцировать meta.class возразите непосредственно. Можно создать meta.class объект от экземпляра класса или использования имени класса:
metaclass — возвращает 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 только для чтения | Массив |
EnumerationMemberList | Массив Смотрите Перечисления для получения дополнительной информации о классах перечисления. |
Hidden атрибут, значение по умолчанию = false | Если установлено в true, класс не появляется в выходе команд MATLAB или инструментов то отображение имена классов. |
InferiorClasses атрибут, значение по умолчанию = {} | Массив ячеек Смотрите приоритет класса |
MethodList только для чтения | Массив |
Name только для чтения | Имя класса сопоставлено с этим meta.class объект (char массив |
PropertyList только для чтения | Массив |
| Если классом не является |
Sealed атрибут, значение по умолчанию = false | Если |
SuperclassList только для чтения | Массив |
| Метод | Цель |
|---|---|
fromName | Возвращает meta.class объект сопоставлен с заданным именем класса. |
tf = eq(Cls) | Функция равенства (a == b). Используйте для теста, если две переменные относятся, чтобы равняться классам (классы, которые содержат точно тот же список элементов). |
tf = ne(Cls) | Не равняются функции (a ~= b). Используйте для теста, если две переменные относятся к различным метаклассам. |
tf = lt(ClsA,ClsB) | Меньше, чем функция (ClsA < ClsB). Используйте, чтобы определить если ClsA строгий подкласс ClsB (т.е. строгий подкласс означает ClsX < ClsX false). |
tf = le(ClsA,ClsB) | Меньше чем или равный функции (ClsA <= ClsB). Используйте, чтобы определить если ClsA подкласс ClsB. |
tf = gt(ClsA,ClsB) | Больше, чем функция (ClsA > ClsB). Используйте, чтобы определить если ClsA строгий суперкласс ClsB (т.е. строгий суперкласс означает ClsX > ClsX false). |
tf = ge(ClsA,ClsB) | Больше, чем или равный функции (ClsA >= ClsB). Используйте, чтобы определить если ClsA суперкласс ClsB. |
| Событие | Цель |
|---|---|
| Если класс является классом Handle, это событие имеет место каждый раз, когда новый экземпляр этого класса Handle создается, включая новые экземпляры любых подклассов. Событие сразу имеет место после того, как все функции конструктора закончили выполняться. |
| Если класс является классом Handle, это событие имеет место каждый раз, когда экземпляр этого класса Handle уничтожается, включая все подклассы. Событие сразу имеет место, прежде чем любые функции деструктора выполняются. |
Найдите атрибуты свойства с помощью handle класс findobj метод и audioplayer
meta.class объект. Определите, можно ли изменить SampleRate свойство на audioplayer объект.
load('handel.mat') player = audioplayer(y,Fs); mc = metaclass(player); mp = findobj(mc.PropertyList,'Name','SampleRate'); if strcmp(mp.SetAccess,'public') player.SampleRate = 7200; end
fromName | meta.event | meta.method | meta.package | meta.property | metaclass