Java中浅拷贝和深拷贝-创新互联

一、前言

创新互联专注于企业成都全网营销、网站重做改版、成武网站定制设计、自适应品牌网站建设、H5高端网站建设商城网站制作、集团公司官网建设、成都外贸网站制作、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为成武等各大城市提供网站开发制作服务。

拷贝的目的就是为了获得相同的对象,当需要属性值相同的对象时,不需要再重新一步一步创建

在Java中的拷贝需要实现Clonable接口,重写Object的clone()方法;同时在Java中的拷贝也分为浅拷贝和深拷贝,其两者的区别就在于对 对象中引用数据类型的不同处理方法。即:

浅拷贝就是克隆出来的新对象与原对象完全一致,包括引用类型字段的值。这就会有一个现象,针对引用类型的字段,两个对象的引用地址一致,如此一来新旧对象之间强关联,修改其中一个对象的内容,极可能影响到另外一个的内容,此时可以使用BeanUtils.copyProperties方法

深拷贝是针对浅拷贝而言的,当一个对象中套一个对象,对对象中的对象中的字段值进行修改时为了不影响原对象中的数据

例如如下的代码:
在这里插入图片描述
当对象中套list集合,集合入参为对象时

BondTradeReqVo bondTradeReqVo1 = new BondTradeReqVo(

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


标题名称:Java中浅拷贝和深拷贝-创新互联
文章源于:http://ybzwz.com/article/cccheo.html