问题描述
- java中如何创建一个对象的副本
- java中基本类型赋值是传递的是值,也就是创建了一个副本,而对象赋值时传递的是引用,那么java中对象能不能创建副本?如何创建
解决方案
需要你自己实现一个clone方法,然后new一个对象,再依次复制每个字段。
你可以用反射或者序列化再反序列化的方法简化复制对象的编程。
解决方案二:
http://www.cnblogs.com/yxnchinahlj/archive/2010/09/20/1831615.html
解决方案三:
你可以赋值给一个新对象
解决方案四:
java传递对象都是引用传递,不过你可以在函数里新建一个对象,然后对这个对象根据传进来的参数进行逐属性赋值,就相当于创建了一个副本
解决方案五:
可以考虑定义类型为struct而不是class。struct都是传值的。
解决方案六:
可以用clone但clone又分深度复制和简单复制
深度复制才是复制了一个新的对象
解决方案七:
引用传递也是值传递,只是把变量的值,也就是对象的地址赋给另一个变量,而自身是没有变的
时间: 2024-09-30 07:22:36