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&#

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值