Java开发之深复制及浅复制

什么是深复制呢?什么是浅复制呢?

作为一名合格的coder的你是否清楚呢? 小编我最近看到一张图,可以说完美的以可视化的方式,解释清楚了这个问题,请看下图

浅复制

浅复制,也就是说是引用复制,是将堆里面的zhang内存地址值0xx1的复制了,给了

p和p1 ,p和p1里面的name都是指向内存值0xx1的位置,这个地址的值是zhang, 此时当p改变了0xx1这个地址的zhang为liu,那么也会影响到p1,因为p1的name也是指向0xx1

深复制,

深复制,就是值复制,此时p和p1里面的name分别是0xx1和0xx2,这个时候当其中任何一个被修改,并不影响另外一个的值


如此一来是不是非常清晰了呢? 如果感觉到有用,请点击关注,支持下小编,小编会持续为您分享更多干货内容

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2018年3月10日
下一篇 2018年3月10日

相关推荐