單例模式的實現方式:
單例模式要求程序中類只有一個對象。所以我們要將他的構造函數設爲private,並提供一個生成對象的靜態方法。
第一種實現方式:
由於第一種方式是線程不安全的。因爲當在if(instace==null)這句話中出現了中斷,期間,又有另一個進程B進入,創建了一個實例,而線程A重新獲取處理器,又創建了該類的另一個實例。
第二種實現方式
這裏直接在內部就生成個實例。
第三種實現方式
加了個synchronized的鎖!這樣就不可能會有多個線程同時進入new Singleton();