meta.method

Опишите метод класса MATLAB

Описание

Класс meta.method предоставляет информацию о методах классов MATLAB®. Свойства чтения/записи класса meta.method соответствуют атрибутам метода и заданы только из определений классов.

Можно запросить свойства только для чтения объекта meta.method получить информацию, которая указана синтаксически классом (например, чтобы получить имя класса, задающего метод).

Вы не можете инстанцировать объекта meta.method непосредственно. Получите объект meta.method из свойства meta.class MethodList, которое содержит массив объектов meta.method, один для каждого метода класса. Например, замените ClassName на имя класса, методы которого вы хотите запросить:

mco = ?ClassName;
mlist = mco.MethodList;
mlist(1).Name; % name of first method in the list

Используйте функцию metaclass, чтобы получить объект meta.class из экземпляра класса:

mco = metaclass(obj);

Свойства

СвойствоЦель
Abstract

Если true, метод не имеет никакой реализации. Метод имеет строку синтаксиса, которая может включать аргументы, который разделяет использование на подклассы при реализации метода.

  • Подклассы не требуются, чтобы задавать то же количество аргументов ввода и вывода.

  • Метод может иметь комментарии после строки function

  • Не содержит function или ключевые слова end, только синтаксис функций (например, [a,b] = myMethod(x,y))

Атрибут Access, значение по умолчанию = public

Определяет, какой код может вызвать этот метод.

  • общедоступно — свободный доступ

  • protected — доступ из методов в классе или подклассах

  • private — доступ методами класса только (не от подклассов)

  • Перечислите классы, которые имеют доступ к этому методу. Задайте классы как объекты meta.class в форме:

    • Один объект meta.class

    • Массив ячеек объектов meta.class. Пустой массив ячеек {} аналогичен частному доступу.

DefiningClassОбъект meta.class, представляющий класс, который задает этот метод.
Description, только для чтения

В настоящее время не используемый.

DetailedDescription, только для чтения

В настоящее время не используемый.

Атрибут Hidden, значение по умолчанию = false

Когда false, имя метода показывает в списке методов, отображенных с помощью команд methodsview или methods. Если установлено в true, имя метода не включено в эти списки.

InputNames

Вектор символов или массив ячеек, содержащий имена входных параметров, используются в функциональной подписи.

Name, только для чтения

Имя метода.

OutputNames

Вектор символов или массив ячеек, содержащий имена выходных аргументов, используются в функциональной подписи.

Атрибут Sealed, значение по умолчанию = falseЕсли true, метод не может быть переопределен в подклассе. Попытка задать метод с тем же именем в подклассе вызывает ошибку.
Атрибут Static, значение по умолчанию = false

Установите на true, чтобы задать метод, который не зависит от объекта класса и не требует объектного аргумента. Вызовите статические методы с помощью имени класса вместо объекта:

classname.methodname()

Или с экземпляром класса, как любой метод:

o.methodname()

Смотрите статические методы