1. 两者区别主要在于引用数据类型的属性,对于基本数据类型采用的是值传递,所以两者一样;
  2. 对于浅拷贝,引用数据类型只会进行引用传递,即复制一份引用值(内存地址)给新对象,一个对象的变化会影响到另一个的引用属性对象,两者同时变化,如:数组,对象等;
  3. 对于深拷贝,会给引用数据类型开辟新的内存空间,并且是逐级复制开辟父级的内存空间,以及父级的父级等等,直到该属性对象可达的所有对象;

  浅拷贝的实现方式:

  1. 构造方法传值;
  2. 重写clone()方法,方法体中调用super.clone()即可采用Object中的原clone方法;

  深拷贝的实现方式:

  1. 重写clone()方法,不同的是需要对每个对象进行深层复制,并开辟内存空间;

  

最新文章

  1. python , angular js 学习记录【1】
  2. ZeroMQ接口函数之 :zmq_msg_get - 获取消息的性质
  3. QDirModel
  4. 我的Android第五章
  5. 通过js获取前台数据向一般处理程序传递Json数据,并解析Json数据,将前台传来的Json数据写入数据库表中
  6. input[type=text]点击之后无边框, 一进页面就显示光标
  7. Javascript生成GUID
  8. Ant 脚本打印系统属性变量、ant内置属性
  9. LabVIEW设计模式系列——普遍使用值改变事件
  10. hadoop报错 Message missing required fields: callId, status
  11. SpringMVC基础学习(二)—开发Handler
  12. POJ 1151 Wormholes spfa+反向建边+负环判断+链式前向星
  13. NOIP 2017 day 1 游记
  14. linux中/bin和/sbin和/usr/bin和/usr/sbin
  15. DDD实战进阶第一波(二):开发一般业务的大健康行业直销系统(搭建支持DDD的轻量级框架一)
  16. 有奖试读—Windows PowerShell实战指南(第2版)
  17. JDBC连接数据库时候出错
  18. 005-优化web请求一-gzip压缩、http缓存控制和缓存校验[Pragma、Expires、Cache-Control、max-age、Last-Modified、用户刷新访问、避免过度304]
  19. 【Selenium-WebDriver问题点】chromeDriver和chrome浏览器版本之间的兼容性问题
  20. maven Missing artifact com.sun:tools:jar:1.5.0

热门文章

  1. postGresql关键字字段重名
  2. bootstrap-multiselect样式修改
  3. python第十四课--排序及自定义函数之自定义函数(案例三)
  4. REST接口设计规范总结
  5. python面试题库——1Python基础篇
  6. oracle ORA-01722:无效数字 记录
  7. 关于jquery的click()方法
  8. Angular动态表单生成(四)
  9. boost::bind 学习
  10. weex中UISegmentControl实现及遇到的问题