相关疑难解决方法(0)

如何正确覆盖克隆方法?

我需要在我的一个没有超类的对象中实现深度克隆.

处理CloneNotSupportedException超类抛出的检查的最佳方法是什么(是Object)?

一位同事建议我按以下方式处理:

@Override
public MyObject clone()
{
    MyObject foo;
    try
    {
        foo = (MyObject) super.clone();
    }
    catch (CloneNotSupportedException e)
    {
        throw new Error();
    }

    // Deep clone member fields here

    return foo;
}
Run Code Online (Sandbox Code Playgroud)

这对我来说似乎是一个很好的解决方案,但我想把它扔到StackOverflow社区,看看是否还有其他任何我可以包含的见解.谢谢!

java clone cloneable cloning

109
推荐指数
5
解决办法
10万
查看次数

在Java中,什么是浅拷贝?

java.util.Calendar.clone()返回"...具有相同属性的新日历"并返回"此日历的浅表副本".

为回答这并不似乎是一个浅拷贝这里的SO.这个问题被标记为与语言无关, Java似乎不遵循语言无关的定义.当我单步执行代码时,我注意到结构和元素被复制到这个新对象,而不仅仅是语言无关的结构.

在Java中,什么是浅拷贝?

它与Java深层副本(如果存在)有何不同?

java clone shallow-copy

51
推荐指数
3
解决办法
8万
查看次数

什么是在Java中克隆对象的需要

我正在阅读有关Java中的克隆,如何制作浅层/深层对象等的内容.

我想知道为什么我需要在Java中创建对象克隆?任何实时示例都有助于理解.

java clone

5
推荐指数
2
解决办法
8186
查看次数

标签 统计

clone ×3

java ×3

cloneable ×1

cloning ×1

shallow-copy ×1