meta.method class

Пакет: meta
Суперклассы: meta.MetaData

Информация о методе класса

Описание

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

meta.method классом является handle класс.

Атрибуты класса

Abstract
true
ConstructOnLoad
true

Для получения информации об атрибутах класса см. Атрибуты класса.

Создание

Вы не можете инстанцировать 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

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

mco = metaclass(obj);

Свойства

развернуть все

Имя метода, возвращенное как вектор символов.

Типы данных: char

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

Типы данных: char | string

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

Типы данных: char | string

Access припишите средства управления, какой код имеет разрешение вызвать этот метод.

  • public — неограниченный доступ

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

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

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

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

    • Массив ячеек meta.class объекты. Массив пустой ячейки, {}, совпадает с private доступ.

Пример: method (Access = private)

Типы данных: enumerated

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

classname.methodname()

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

o.methodname()

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

Пример: method (Static)

Типы данных: логический

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

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

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

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

Пример: method (Abstract)

Типы данных: логический

Может этот метод быть замененным, возвращенным как логический true или false. Если true, метод не может быть переопределен в подклассе. Попытка задать метод с тем же именем в подклассе вызывает ошибку.

Пример: method (Sealed)

Типы данных: логический

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

Типы данных: логический

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

Типы данных: char | cell

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

Типы данных: char | cell

Класс, задающий этот метод, возвращенный как meta.class объект, представляющий класс определения. Класс определения всегда является самым определенным классом с точки зрения meta.method объект. Поэтому, если подкласс заменяет унаследованный метод, то класс определения для подкласса meta.method объект является подклассом. Точно так же класс определения для суперкласса meta.method объект является суперклассом.

Типы данных: meta.class

Примеры

свернуть все

Используйте meta.method данные, чтобы получить информацию о методе копии matlab.mixin.Copyable класс.

mc =?matlab.mixin.Copyable;
copyInfo = findobj(mc.MethodList,"Name","copy")
copyInfo = 

  method with properties:

                   Name: 'copy'
            Description: ''
    DetailedDescription: ''
                 Access: 'public'
                 Static: 0
               Abstract: 0
                 Sealed: 1
                 Hidden: 0
             InputNames: {'rhs1'}
            OutputNames: {'lhs1'}
          DefiningClass: [1×1 meta.class]
Введенный в R2008a