复制子类对象的超类部分

时间:2013-08-29 15:17:04

标签: matlab inheritance copy-constructor

说我有

classdef A < matlab.mixin.Copyable & matlab.mixin.Heterogeneous
.
.
classdef B < A
.
.
classdef C < A

我想要的是能够通过仅复制A属性来构建基于B实例的C实例。而且我宁愿不实现自定义mycopy方法,因为每次我向A添加属性时都需要更新它。

我尝试修改B的copyElement()以便它只调用A的copyElement(),但是(不出所料)仍然返回了B类的对象。

请注意,我的“转换”与大多数问题(SO和Google)的方向相反,后者从超类复制到子类。也许出于一些概念上的原因,我想要的是一个坏主意。然而,正如它所说here

  

类设计中的一个重要概念是子类对象也是其超类的对象。

我知道我可以从超类中构造一个子类对象。

0 个答案:

没有答案