当前位置: 首页 > news >正文

域名 空间 网站全国企业信息网上公示系统

域名 空间 网站,全国企业信息网上公示系统,网站开发 待遇怎么样,做网站要什么语言java中有一个概念叫深拷贝和浅拷贝,那这两个是什么意思呢?其实你可以对比一下c中的传值和传引用的问题。 深拷贝 即两个相同的对象地址不同,比如对象A通过拷贝出来对象B,在对B对象进行操作时不会影响到A对象的内容。 浅拷贝 和…

java中有一个概念叫深拷贝和浅拷贝,那这两个是什么意思呢?其实你可以对比一下c中的传值和传引用的问题。

深拷贝

即两个相同的对象地址不同,比如对象A通过拷贝出来对象B,在对B对象进行操作时不会影响到A对象的内容。

浅拷贝

和深拷贝相反,创建一个对象A,然后通过A对象克隆出对象B,此时A和B两个对象的地址是一样的,即两个对象使用的是同一个地址。

如何实现深拷贝和浅拷贝

浅拷贝的实现

可以使用Beanutils进行浅拷贝,代码如下:

观察结果我们发现,拷贝出来的其实是两个不同的对象,但是他们的值是相同的,此时我们去修改user1中的值,看user中的值是否会发生变化

这时user和user1的值都发生了改变,说明BeanUtils使用的是浅拷贝的方式

深拷贝的实现 

深拷贝实现方式有几种,我们一一进行介绍

实现Cloneable接口,重写clone方法

        这个实现方式其实现在不怎么用,因为想要重写clone方法,就必须要实现Cloneable,不然就会报CloneNotSupportedException异常,而且一旦对象中增加或者删除某个属性,也要相应修改clone方法,所以比较繁琐,因此这里就不做介绍了,感兴趣的同学可以去其他博客上了解~

序列化实现深拷贝

        我们可以把对象序列化成流,然后再反序列化成对象,这样得到的就是一个新对象了,就比如我们可以使用各种json工具将对象序列化成JSON字符串,然后再从字符串中反序列化对象。

要注意的是这里导入的依赖为以下依赖

 <dependency><groupId>com.alibaba.fastjson2</groupId><artifactId>fastjson2</artifactId><version>2.0.46</version></dependency>

不能是fastjson这个依赖,不然你就会跟我一样喜提一个报错,报错信息如下:

 除此之外,我们还可以使用Apache Commons Lang提供的SerializationUtils工具来实现,首先,我们需要修改一下类:

引入依赖

   <dependency><groupId>org.apache.commons</groupId><artifactId>commons-lang3</artifactId><version>3.4</version></dependency>

我们发现也可以实现深拷贝~

以上就是深拷贝和浅拷贝的全部内容,希望你能有所收获~ 

 

 

http://www.yayakq.cn/news/901854/

相关文章:

  • 哪有免费做网站怎么学seo基础
  • 名片型网站开发网页设计企业网站素材库
  • 仿素材下载网站源码wordpress 数据 拆分
  • 禹城网站定制成立个人工作室需要什么条件
  • 网站怎么防止黑客攻击html怎么做移动端网站
  • 手机网站案例 鸿微网站 布局
  • 网站建设的英文茶叶网站建设公司
  • 网站建设开发哪家质量好订单网站模板
  • 班级网站设计论文wordpress首页布局修改
  • 求个没封的a站yw1129cm网站开发营销网站多少钱
  • 河南省 门户网站建设要求建立网站策划书
  • 济南企业网站关键词推广网站资料上传
  • 婴幼儿用品销售网站开发报告餐饮酒店网站怎么做
  • 网站开发项目预算表学校网站建设报价
  • 网站模板怎么进wordpress访问格式丢失
  • 会展相关网站的建设情况北京顺义网站建设
  • 建筑模板的规格app排名优化公司
  • 建站系统搭建音乐网站wordpress时间调用标签
  • 网龙网络公司官网南昌网优化seo公司
  • linux做网站的好处在线黑科技网站
  • 广西新宇建设项目有限公司网站网站推广方法大全
  • 做网站图片多少钱wordpress免费的企业主题
  • 互联网建设企业网站搭建asp虚拟主机网站
  • 网站建设有哪几个方面网络运营商怎么联系
  • 济南金融行业网站开发办公门户网站模板
  • shopify建站公司wordpress文章加密访问
  • 建一个网站多少钱黑帽seo培训大神
  • 免费移动网站模板c 做网站后端
  • 汕头网站制作多少钱低代码开发
  • 高定网站无锡网站建设方式