使用場景:
確保某個類只有一個對象的場景,避免產(chǎn)生多個對象消耗過多的資源矩肩,或者某種類型的對象只應(yīng)該有且只有一個。例如肃续,創(chuàng)建一個對象需要消耗的資源過多黍檩,如訪問IO和數(shù)據(jù)庫等。
靜態(tài)內(nèi)部類單例模式:
public class Singleton {
private Singleton() {
}
public static Singleton getInstance() {
return SingletonHolder.sInstance;
}
/**
* 靜態(tài)內(nèi)部類
*/
private static class SingletonHolder {
private static final Singleton sInstance = new Singleton();
}
}