單例模式規定一個類只能有一個例項,並且不允許建立多個例項。為此,我們將類的建構函式設為私有,並透過靜態方法返回一個例項。但是,使用克隆,我們仍然可以建立類的多個例項。請參見下面的示例 - 示例 - 破壞單例public class Tester{ public static void main(String[] args) throws CloneNotSupportedException { A a = A.getInstance(); A b = (A)a.clone(); System.out.println(a.hashCode()); System.out.println(b.hashCode()); } } ... 閱讀更多
如果一個物件不再被活動引用所引用,那麼它就具備了被垃圾回收的資格。請參見下面的示例 - 示例public class Tester{ public static void main(String[] args) { test(); } public static void test(){ A a = new A(); } } class A {}當 test() 方法執行完成時,a 物件不再被引用,並且具備了被垃圾回收的資格。Java 垃圾回收器將在其執行時釋放該物件。為了防止垃圾回收,我們可以建立一個物件的靜態引用,然後 ... 閱讀更多