Чтобы задать класс, который является подклассом другого класса, добавьте суперкласс в строку classdef после символа <:
classdef ClassName < SuperClass
При наследовании нескольким классам используйте символ &, чтобы указать на комбинацию суперклассов:
classdef ClassName < SuperClass1 & SuperClass2
Смотрите Совместимость Члена класса для получения дополнительной информации о получении от нескольких суперклассов.
Подклассы не наследовали атрибуты суперкласса.
Предположим, что вы хотите задать класс, который вывел от double и ограничивает значения, чтобы быть положительными числами. Класс PositiveDouble:
Поддерживает конструктора по умолчанию (никакие входные параметры). См. Вызов конструктора без входного аргумента
Ограничивает входные параметры положительными значениями с помощью mustBePositive.
Вызывает конструктора суперкласса с входным значением, чтобы создать двойную числовую стоимость.
classdef PositiveDouble < double methods function obj = PositiveDouble(data) if nargin == 0 data = 1; else mustBePositive(data) end obj = obj@double(data); end end end
Создайте объект класса PositiveDouble с помощью массива 1 на 5 чисел:
a = PositiveDouble(1:5);
Можно выполнить операции на объектах этого класса как любой, удваиваются.
sum(a)
ans =
15Объекты класса PositiveDouble должны быть положительными значениями.
a = PositiveDouble(0:5);
Error using mustBePositive (line 19)
Value must be positive.
Error in PositiveDouble (line 7)
mustBePositive(data)