單例模式

實現原理:

單例模式的實現類,由一個私有靜態變量和一個返回該私有靜態變量的Public靜態方法組成。

實現類的構造方法設置爲私有方法,每次調用getInstance時,進行判斷,如果是第一次調用,則創建一個新實例,並且該實例賦值給靜態變量。如果不是第一次調用,則直接返回已賦值過的靜態變量,實現了始終只有一個實例的功能。

舉例:

package java1200_88;


public class singleInstanceDemo {

//必須用static聲明是一個靜態的變量。

private static singleInstanceDemo sidemo = null;

private singleInstanceDemo(){

System.out.println("Instance only generate once");

}

//單例模式的關鍵,是必須要使用if(sidemo==null)的判斷。

public static singleInstanceDemo getInstance(){

if(sidemo == null){

sidemo = new singleInstanceDemo();

}

return sidemo;

}

public static void main(String[] args){

//判斷多次調用的是否是同一個實例。

System.out.println(singleInstanceDemo.getInstance().toString());

System.out.println(singleInstanceDemo.getInstance().toString());

System.out.println(singleInstanceDemo.getInstance().toString());

System.out.println(singleInstanceDemo.getInstance().toString());

}

}


運行結果:

Instance only generate once

java1200_88.singleInstanceDemo@139a55

java1200_88.singleInstanceDemo@139a55

java1200_88.singleInstanceDemo@139a55

java1200_88.singleInstanceDemo@139a55


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章