【发布时间】:2015-09-10 09:25:43
【问题描述】:
这是来自 Effective Java 的引述:
在这里,复制自 java.lang.Object 的规范 [JavaSE6]:
创建并返回此对象的副本。的确切含义 “复制”可能取决于对象的类别。总体意图是 即,对于任何对象 x,表达式
x.clone() != x将是真的,并且表达式
x.clone().getClass() == x.getClass()确实如此,但这些不是绝对要求。虽然通常情况下
x.clone().equals(x)会是真的,这不是一个绝对的要求。 复制一个对象通常需要创建一个新对象 其类的实例,但可能需要复制内部数据 结构也是如此。不调用任何构造函数。
现在让我们看看JavaSE6 javadocs
创建并返回此对象的副本。的确切含义 “复制”可能取决于对象的类别。总体意图是 即,对于任何对象 x,表达式:
x.clone() != x will be true,那表达式:
x.clone().getClass() == x.getClass()将是 是的,但这些不是绝对要求。虽然它通常是 情况:
x.clone().equals(x)会是真的,这不是 绝对要求。
他在哪里找到强调的文字?有什么要求?
【问题讨论】: