2010年3月9日 星期二

Design Pattern : 05 Singleton


當在整個程式裡,我們對於某個clas
只需要存在一個instance時,例如整個程式的設定檔
整個通用的css class,這時可使用Singleton Pattern達到這個目的
參與者
1.Singleton
只能透過 class的 static method getInstance來取得instance
不能在外部使用new 來產生instance,所以將建構子設定為private


public class Singleton{
    private static Singleton _singleton=new Singleton('myid')
    private String myid;//這是instance的var
    private static String myVer="Sample";//這是static var
    private Singleton(String myid){
        this.myid=myid;
        showID();
    }
    private void showID(){
        System.out.println(this.myid)
    }
    public static Singleton getInstance(){
        System.out.println(myVer);
        return _singleton();
    }
}

2.Main 外部主程式


Singleton.getInstance();


PS:在static method內,只能夠呼叫使用staic variable或method
建構子是屬於instance method,可以呼叫使用static或instance method
在使用Vector來儲存物件,記得要宣告內存的類型
Vector myv=new Vector();

1 則留言:

匿名 提到...

waiting for next post