子类语法
子类定义语法
要定义作为另一个类的子类的类,请将超类添加到 classdef
行中的 <
字符后:
classdef ClassName < SuperClass
从多个类继承时,使用 &
字符来指示超类的组合:
classdef ClassName < SuperClass1 & SuperClass2
有关从多个超类派生的详细信息,请参阅Class Member Compatibility。
类属性
子类不继承超类属性。
子类化 double
假设您要定义从 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
使用 1×5 数值数组创建 PositiveDouble
类的对象:
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)