java父子拷贝
本次应用场景:
无侵入二次开发,代理的方式。(不修改原有代码修改返回结果集的方式添加属性)
原有服务返回了一个object,但是由于不同客户需求,需要添加或者删除某些属性,那么我们不能轻易修改原始方法,则可以通过代理的方式,修改结果集,在启动添加或者删除属性。这就可能涉及到类的拷贝。
例如:某客户需在标准功能中添加额外功能,如排序,那么我们就需要在返回结果集中,添加属性showorder=true,实现前端配置排序。由于返回的是对象,继承原有对象,在新的对象中添加属性,返回新的对象即可。
参考
1.https://blog.csdn.net/lifewinnerforever/article/details/72801247
2.https://blog.csdn.net/weixin_42268217/article/details/85097754
3.https://www.cnblogs.com/SimonHu1993/p/7356058.html
参考说明:
1.假设有父类Fu ,其子类为Zi ,从对象的内存角度,假设Fu类里面的变量占内存2M, Zi 类里的变量占内存1M:
Fu f = new Fu ();//系统将分配2M内存
Zi z = new Zi ();//系统将分配3M内存(2+1)
因为子类中有一个隐藏的引用super会指向父类实例,所以在实例化子类之前会先实例化一个父类,也就是说会先执行父类的构造函数.所以z可以调用父类的方法.
Zi z1&#