Singleton模式在Java中是一個最經常使用的模式。它是用來防止經過外部控制建立的對象實例化。這個概念能夠推廣到系統時更有效率地運做只存在一個對象或對象的實例化限制在必定數量,例如:java
1.私有構造函數-沒有其餘的類能夠實例化一個新對象。ide
2.屬性私有化。函數
3.惟一獲取對象,經過靜態公共方法獲取。spa
Class Diagram and Codecode
第一種:對象
public class AmericaPresident { private static final AmericaPresident thePresident = new AmericaPresident(); private AmericaPresident() {} public static AmericaPresident getPresident() { return thePresident; }}
第二種:ci
public class AmericaPresident { private static AmericaPresident thePresident; private AmericaPresident() {} public static AmericaPresident getPresident() { if (thePresident == null) { thePresident = new AmericaPresident(); } return thePresident; }}
第三種:get
public enum AmericaPresident{ INSTANCE; public static void doSomething(){ //do something }}