Существуют функции, которые MATLAB® вызывает неявно, когда вы выполняете определенные действия с объектами. Например, оператор как [B(1);A(3)]
включает индексированную ссылочную и вертикальную конкатенацию.
Можно измениться, как пользовательские объекты ведут себя путем определения методов, которые управляют определенными поведениями. Чтобы изменить поведение, реализуйте соответствующий метод с именем и подписью функции MATLAB.
В следующей таблице перечислены методы, чтобы реализовать для вашего класса и описывает поведения, которыми они управляют.
Метод класса реализовать | Описание |
---|---|
Конкатенация объектов | |
cat , horzcat , и vertcat | Настройте поведение при конкатенации объектов |
Создание пустых массивов | |
Создайте пустые массивы заданного класса. Смотрите Пустые массивы | |
Отображение объектов | |
Названный, когда вы вводите Вызванный операторами, которые не отключены точками с запятой. Смотрите Перегрузку функции disp | |
Преобразование объектов к другим классам | |
Преобразуйте объект в MATLAB встроенный класс Смотрите символьный конвертер и двойной конвертер | |
Индексация объектов | |
Позволяет вам создать нестандартную индексируемую ссылку и индексированное присвоение | |
Поддержки Смотрите конец как Индекс объекта | |
Определите число элементов в массиве Смотрите Изменяют nargout и nargin для Методов индексирования | |
Перегрузка, чтобы задать количество значений, чтобы возвратиться из индексации выражений. | |
Определите размерности массива | |
Поддержка с помощью объекта в индексации выражений Смотрите объекты в выражениях индекса | |
Сохранение и загружаемые объекты | |
loadobj и saveobj | Настройте поведение при загрузке и сохранении объектов |
Изменение и реконструкция | |
Перестройте размерности массива N-D | |
Транспонируйте вектор или матрицу | |
Комплексное сопряженное транспонирование | |
Изменение размерности массива | |
Реплицируйте массив в заданных измерениях | |
Определение размера и формы | |
Определите, является ли вход скаляром | |
Определите, является ли вход вектором | |
Определите, является ли вход матрицей | |
Определите, пуст ли вход |
Перегрузка и переопределение являются условиями, которые описывают методы для настройки поведения класса. Вот то, как мы используем эти термины в MATLAB.
Перегрузка средних значений, что существует больше чем одна функция или метод, имеющий то же имя в том же осциллографе. MATLAB отправляет конкретной функции или методу на основе доминирующего аргумента. Например, timeseries
класс перегружает MATLAB plot
функция. Когда вы вызываете plot
с timeseries
возразите как входной параметр, MATLAB вызывает timeseries
метод класса под названием plot
.
Чтобы вызвать неперегруженную функцию, используйте builtin
функция.
Переопределение означает переопределять метод, наследованный от суперкласса. MATLAB отправляет самой определенной версии метода. Таким образом, если доминирующий аргумент является объектом подкласса, то MATLAB вызывает метод подклассов.
Чтобы управлять преобладанием класса, используйте InferiorClasses
атрибут.