如何在Java中更快地创建/复制对象?
我想在java中复制一个对象而不复制引用
Object o1 = new Object();
Object o2 = o1;
但o2不应复制o1的参考值。因此,o2中的任何变化不得影响o1
我们如何在java中做到这一点
你可以在下面搜索框中键入要查询的问题!
我想在java中复制一个对象而不复制引用
Object o1 = new Object();
Object o2 = o1;
但o2不应复制o1的参考值。因此,o2中的任何变化不得影响o1
我们如何在java中做到这一点
# 1 楼答案
您可以重写
clone()
方法,该方法将创建整个对象图的副本(深度副本)并创建新对象注意:每个类都将从Object类继承默认的
clone()
实现。但必须重写该方法才能根据对象的内容执行复制仅供参考:
# 2 楼答案
如果需要复制对象以外的其他类,请创建一个复制构造函数或静态工厂方法。效果是这样的:
或
不要使用克隆-&燃气轮机Effective Java
# 3 楼答案
可以使用Object.clone()方法克隆对象: