码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Java深拷贝与浅拷贝


    场景:
    在开发中,经常会用到 = 或 BeanUtil.copyProperties() 进行对象拷贝,但有个问题就是涉及到深拷贝与浅拷贝问题

    一、什么是浅拷贝?

    1、浅拷贝介绍

    只复制指向某个对象的指针,而不复制对象本身,新旧对象还是共享同一块内存, 所以如果其中一个对象改变了这个地址中的属性值,就会影响到另一个对象的属性值

    浅拷贝特点 :
    【1】只复制对象中基本类型和引用类型属性的值,并不复制内存地址,还是共享同一个堆内存地址
    【2】如果其中一个对象改变了这个地址中的属性值,会影响到另一个对象的属性值

    2、用 = 验证浅拷贝

    1. //测试深浅拷贝 start
    2. TestCopyDtoOne testCopyDtoOne = new TestCopyDtoOne();
    3. testCopyDtoOne.setUserName("张三");
    4. testCopyDtoOne.setAddress("上海");
    5. testCopyDtoOne.setObj(new TestCopyDtoThree("123456789", "a"));
    6. System.out.println("浅拷贝之前原对象:" + testCopyDtoOne.toString());
    7. TestCopyDtoOne testCopyDtoOneQian = new TestCopyDtoOne();
    8. t
  • 相关阅读:
    md5的特点以及加密原理
    [人工智能-综述-15]:第九届全球软件大会(南京)有感 -4-大语言模型全流程、全方面提升软件生产效能
    C++中打印uint64_t
    OCR 表格识别中的树编辑距离
    Java网络爬虫入门
    Ant Design Pro安装及简单搭建
    跨语言调用C#代码的新方式-DllExport
    react-native webstorm 无法启动 Android 模拟器
    MIT课程分布式系统学习03——GFS
    关于网络协议的若干问题(五)
  • 原文地址:https://blog.csdn.net/hkl_Forever/article/details/128140794
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号