2 回答

TA貢獻(xiàn)1821條經(jīng)驗(yàn) 獲得超5個(gè)贊
singleton就是單例的意思。
就是說,單例模式的類只能創(chuàng)建一個(gè)對(duì)象,這個(gè)經(jīng)常用到的,比如解析配置文件的類就是單例的。
餓漢式
class Singleton {
private static Singleton instance=new Singleton();
private Singleton(){}
static Singleton getInstance() {
return instance;
}
}
懶漢式
class Singleton {
private static Singleton instance=null;
private Singleton(){}
static Singleton getInstance() {
if(instance==null)
instance=new Singleton();
return instance;
}
}
創(chuàng)建單例的兩種方式。你可以看到無論那種方式都將無參構(gòu)造函數(shù)設(shè)為了私有,也就是說想得到這個(gè)類的對(duì)象是無法使用new來創(chuàng)建了,必須通過它提供的靜態(tài)方法獲得。而靜態(tài)方法返回的是一個(gè)該類的靜態(tài)對(duì)象,靜態(tài)變量是全局唯一的,這樣就保證了,每次get時(shí)始終都是返回的這個(gè)對(duì)象。
- 2 回答
- 0 關(guān)注
- 732 瀏覽
添加回答
舉報(bào)