Атрибуты метода

Назначение атрибутов метода

Установка атрибутов в определении класса позволяет настраивать поведение методов в определенных целях. Управляйте характеристиками, такими как доступ, видимость и реализация путем установки атрибутов метода. Подклассы не наследуют атрибуты представителей суперкласса.

Определение атрибутов метода

Присвойте атрибуты метода в той же линии, что и methods ключевое слово:

methods (Attribute1 = value1, Attribute2 = value2,...)
   ...
end

Для получения дополнительной информации о синтаксисе атрибутов см. «Спецификация атрибута».

Таблица атрибутов метода

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

Значения атрибутов применяются ко всем методам, заданным в methods...end кодовый блок, который задает значения, отличные от значений по умолчанию.

Атрибуты метода

Имя атрибута

Класс

Описание

Abstract

logical По умолчанию = false

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

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

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

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

Access

  • перечисление, по умолчанию = public

  • meta.class объект

  • массив ячеек meta.class объекты

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

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

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

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

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

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

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

    Смотрите доступ для членов класса

Hidden

logical По умолчанию = false

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

Sealed

logical По умолчанию = false

Если trueметод не может быть переопределен в подклассе. Попытка задать метод с таким же именем в подклассе приводит к ошибке.

Static

logical По умолчанию = false

Задайте следующим true для определения метода, который не зависит от объекта класса и не требует аргумента объекта. Используйте имя класса, чтобы вызвать метод: classname. methodname или образец класса: obj. methodname

Дополнительные сведения см. в разделе «Статические методы».

Атрибуты среды

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

См. также

|

Похожие темы

Для просмотра документации необходимо авторизоваться на сайте