JAVA中的兩種單例模式

2021-08-18 04:11:09 字數 508 閱讀 5975

乙個類中我們可以通過new()建立很多的物件,但是有的類只允許有乙個物件來進行操作,這就是所謂的單例模式。

我們都知道單例模式有兩種,一種是餓漢模式,一種是懶漢模式。

顧名思義,懶漢模式就是在需要時候才建立單例物件,而餓漢模式我們可以理解它很餓所以急切提前把單例物件建立好,不管需不需要。

關於單例物件,我們需要注意的是,單例物件都是靜態的,而且構造方法是私有的,這個是很好理解的,既然是單例物件,自然不允許其他的隨意呼叫構造方法建立物件,這就違背了單例物件的本意。而且我們要建立乙個公共的方法來讓外界獲得單例物件。

首先來了解一下餓漢模式;

public class hungrysingleton

public hungrysingleton getinstance()

}懶漢模式:

public class lazysingleton

public lazysingleton getinstance() }}

return instance;}}

兩種單例模式

一。單例模式 有以下的特點 eg。每台計算機可以有若干通訊埠,系統應當集中管理這些通訊埠,以避免乙個通訊埠同時被兩個請求同時呼叫。為了避免不一致狀態 1 單例類只能有乙個例項。2 單例類必須自己建立自己的唯一例項。3 單例類必須給所有其他物件提供這一例項。1 懶漢式單例 singleton通過將構造...

單例模式(java兩種方式實現)

測試類 public class singletontest1 單例類 class singleton 構造方法私有帶來乙個問題,就是不能產生例項了,所以通過寫乙個方法返回乙個例項 第二步 public static singleton getinstance 必須為static 這樣在main中才...

Java中設計模式與單例的常用兩種模式

設計模式 前人總結出來的經驗,被後人直接拿來使用 常用的設計模式有23種,最常用的有單例,模板,裝飾,介面卡,工廠等 單例 作用 可以實現兩個物件之間的傳值 好處 可以讓兩個物件在完全沒有練習的前提下,實現值的傳遞,降低了耦合性,提高了內聚性 耦合性內聚性的在微觀上說 描述的是類於類之間的關係 好處...