gpt4 book ai didi

Java:传入 "this"的副本?

转载 作者:行者123 更新时间:2023-12-02 08:12:29 26 4
gpt4 key购买 nike

Possible Duplicate:
How do I copy an object in Java?

我的类中有一个函数 Claus它调用一个函数来接受类型 Claus 。我目前正在传入this作为参数,但是它正在编辑我不希望它执行的类的当前实例。相反,我希望它克隆该类的当前实例并对其进行编辑,使副本保持独立。我怎样才能做到这一点?

编辑

也许我应该进一步澄清我的问题......

我有一个对象位于另一个对象内..例如 Clausfloss 。我一直在阅读shallow copydeep copy我想我已经有了 Claus正确复印。我就是这样做的...

public Claus(Claus g){
cla = new Floss(g.getFloss());
//irrelevant other variables...
p = g.getP();
c = g.getC();
}

但是,Claus内的函数我在构造函数中以完全相同的方式声明......也就是说......

 cla = new Floss(g.getFloss());

其中 cla = Floss变量和 g = Claus它被传递给构造函数。 Floss对象似乎没有像它应该的那样创建深拷贝。为什么会发生这种情况?

最佳答案

实现Cloneable并使用 this.clone(),就像任何其他变量一样。

关于Java:传入 "this"的副本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8481952/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com