2016-05-23 53 views
1

在檢查Java對象類的源代碼時,我很困惑,如果它是層次結構中最頂層的非抽象類,我們怎樣才能使clone()方法不被實現?我知道Cloneable接口作爲一個標記接口來表示它合法的克隆實現Cloneable的特定對象,而不能找到clone()方法的實現。它是JVM的一部分嗎?我無法在Java的Object類中找到clone()方法的實現。

+1

這些日子裏,Cloneable並沒有被使用或討論太多。 – duffymo

+0

如果您必須創建一個Cloneable,請閱讀Joshua Bloch的「Effective Java」。 – duffymo

回答

3

它定義爲protected native Object clone() throws CloneNotSupportedException;

作爲一個本地方法,它的實施是不是在Java源代碼可見。

+1

這裏的答案告訴在哪裏可以找到源代碼,它實際上是JVM的一部分:http://stackoverflow.com/questions/12032292/is-it-possible-to-find-the-source-for-a-java -native-方法 – diidu

相關問題