設計模式之單例模式

2021-07-23 19:32:39 字數 865 閱讀 4503

單例模式應該是設計模式中最簡單的模式了,所以經常被設計模式課程作為入門模式進行講解。

單例模式本身比較簡單,其實也就是一句話,一次只能建乙個物件例項,再看看**示例就更清楚了。

public

class

singleton

public

static singleton getinstance()

return instance;

} }

但是在實際工作中,尤其在面試中,老有人會問你執行緒安全的單例怎麼寫,這一點也需要注意一下。

package com.creational;

public

class

singleton

public

static

synchronized singleton getsingleton()

return instance;

}public

void

dosomething(){}

}

上面舉得栗子呢比較簡單,當然還要很多其他形式的單例模式,請參考這裡

今天想到乙個問題,就是單例模式跟一次只能乙個程序(比如安裝microsoft office,乙個安裝正在進行中,如果再雙擊install.exe安裝檔案,會提示只能啟動乙個例項)到底有啥關係?

答案是沒有卵關係,前者是在單一程序中物件例項的控制,後者呢程式語言本身不提供這樣的功能,這個需要作業系統共同配合才可以。

參考文獻:

設計模式之單例模式

前一段時間買了一本秦小波寫的 設計模式之禪 網上對這書的評價很高。現在還沒有看很多,但是有些地方頗有感觸,也並不是所有的地方都能看懂,但是會慢慢研究的。自己對於設計模式的感覺就是乙個字 牛!感覺會23種設計模式並且會熟練運用的人,真的就是大師級的牛人了,設計模式是乙個專案主管或者架構師一定要會的東西...

設計模式之單例模式

package com.xie.singleton public class singleton 提供乙個共有的靜態的入口方法 public static singleton getinstance 懶漢式 延遲載入 提供乙個私有的靜態的成員變數,但不做初始化 private static sing...

設計模式之 單例模式

單例模式 singleton 保證乙個類僅有乙個例項,並提供乙個訪問它的全域性訪問點。單例模式 單件模式 使用方法返回唯一的例項 public class singleton private static singleton instance public static singleton geti...