【发布时间】:2013-03-08 17:08:17
【问题描述】:
来自Artima article on clone vs copy constructor:
Object 的克隆方法非常棘手。它基于现场副本,并且 它是“语言外的”。它创建一个对象而不调用 构造函数。不能保证它保留不变量 由建设者建立。已经有很多错误了 年,无论是在太阳内外,都源于这样一个事实,如果你 只需重复调用 super.clone 直到你克隆了一个 对象,你有一个对象的浅拷贝。
Joshua Bloch 所说的外语是什么意思?
【问题讨论】:
-
我猜他的意思是它超出了 Java 语言中通常为对象实例化建立的规则 - id est,调用对象的构造函数。
-
@Geek +1,你从
Effective java by Joushua Bloch的书中提出了很多有趣的问题,尤其是关于泛型的问题.. :) -
@PermGenError 我希望我提出的问题也能对其他人有所帮助。 Stackoverflow 真是太棒了。
-
“外语”一词是外语。
-
写拉丁文的主要原因之一是听起来很聪明,尽管您不确定自己在说什么,并暗中希望您的听众不会理解这个问题并且他们害怕承认他们没有。
标签: java clone effective-java