目录
1.继承一个父类
定义一个person类
定义一个writer类,并从父类person中继承一些属性
2深拷贝和浅拷贝
containers. Map容器类的map方法能创建一个值映射到唯一键的对象,这里将这个对象赋予到了map属性,用此方法实现matlab的深拷贝
classdef MyMap < handle properties map; end methods function obj = MyMap(data) obj.map = containers.Map('data',data); %使用构造函数创建独立的Map end function obj_new = MyMapCopy(obj_old) obj_new.map = containers.Map(obj_old.map.keys, obj_old.map.values); end end end
运行
a=MyMap([123,468,546]); a.map a.map.keys c=a.map.values a.map.values k=[1,2,3] k(1) b=MyMapCopy(a) b.map b.map.values
disp在类方法中作为内置方法,我们可以在父类中对其进行重载
类的方法的调用方式
@文件夹下都属于同一个类,其下的函数属于该类的方法
3 枚举类
通过向类定义中添加 enumeration
代码块可创建枚举类
如果枚举类指定超类,您可以通过将枚举对象传递给超类构造函数,将枚举对象转换为超类。然而,超类构造函数必须能够接受自己的类作为输入,并返回超类的实例。MATLAB 的内置数值类(如 uint32
)允许此转换。
classdef AnimalType < uint8
enumeration
Mouse (1)
Cat (2)
Dog (3)
Wolf (4)
Leopard (5)
Tiger (6)
Lion (7)
Elephant (8)
end
methods
end
end