Обычные методы задают функции, которые работают с объектами класса. Поэтому один из входных параметров должен быть объектом или массивом объектов класса определения. Эти методы могут вычислить значения на основе данных объектов, может перегрузить MATLAB® встроенные функции, и могут вызвать другие методы и функции. Обычные методы могут возвратить измененные объекты.
Этот пример показывает определение метода () в methodNameclassdef и methods блоки:
classdef ClassName methods (AttributeName = value,...) function methodName(obj,args) % method code ... end ... end % end of method block ... end
Атрибуты метода применяются только к тому конкретному блоку методов, который отключен end оператор.
Примечание
Нестатические методы должны включать явную переменную объекта как аргумент функции. Язык MATLAB не поддерживает неявную ссылку в определении функции метода.
addData метод добавляет значение в Data свойство MyData объекты. mustBeNumeric функция ограничивает значение Data свойство к числовым значениям. Свойство имеет значение по умолчанию 0.
addData метод возвращает модифицированный объект, который можно повторно присвоить той же переменной.
classdef MyData properties Data {mustBeNumeric} = 0 end methods function obj = addData(obj,val) if isnumeric(val) newData = obj.Data + val; obj.Data = newData; end end end end
a = MyData; a = addData(a,75)
a =
MyData with properties:
Data: 75Любой из следующих операторов является правильным синтаксисом для вызова метода, где obj объект класса, задающего метод:methodName
obj.methodName(arg) methodName(obj,arg)
Можно задать методы:
В блоке определения класса
В отдельном файле в папке класса (то есть, @ папка)ClassName
Для получения дополнительной информации о папках класса смотрите, что Папки Содержат Определения классов.