gpt4 book ai didi

java - 在 Java 中创建不可变对象(immutable对象)克隆的方法

转载 作者:行者123 更新时间:2023-12-02 04:56:06 27 4
gpt4 key购买 nike

我有一个场景,其中我将模型对象的集合与标识符[BASE]相关联。根据我的业务用例,我可以从标识符 [BASE] 创建一个场景。在这种情况下,还会引用模型对象上的集合。这样做我不需要再次创建相同数据的快照。

另一个用例是用户可能会修改从标识符[BASE]派生的场景中的某些值。此时,修改后的值对应的Model对象将被新的Model对象替换。

这种情况可能会发生多次,其中我的整个模型对象集合可能会被新对象替换。

我的问题是,创建一个新的不可变对象(immutable对象)并在每次用户修改任何内容时在引用中替换它的方法是否合适。

或者是否还有另一种更好的方法,其中每当用户修改对象而不是返回新的不可变对象(immutable对象)时,我们应该返回一个新的可变对象,该对象可以根据用户的需要进一步进行多次变异。这也将确保模型对象的初始集合不会发生变化。

任何想法。

TIA!

最佳答案

没有任何理由去克隆不可变对象(immutable对象)。因为它们是不可变的,所以共享它们是安全的。复制一个会浪费内存。

关于java - 在 Java 中创建不可变对象(immutable对象)克隆的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28758429/

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