單例模式用來確保每乙個類都有乙個例項,並且自行實體化並且向整個系統提供這個例項,單例模式常常用於避免產生多個物件消耗過多的資源,或者某種型別的資源應該有並且只有乙個,例如訪問資料庫和訪問io的時候就要考慮單例模式。
比較經典的單例模式有懶漢式和惡漢式兩種,下面給出這兩種不同方式的uml圖:
1.惡漢式
2.懶漢式:
下面是懶漢式和惡漢式的示例**:
1.惡漢式
public class hungrysingleton
//3.公共的靜態方法,其他類能得到這個唯一例項
public static hungrysingleton get()
}
2.懶漢式
public class lazysingleton
//3.公共的靜態方法,用來獲得這個例項
synchronized public static lazysingleton get()
return onlyone;}}
關於單例模式
單例模式 只能產生乙個例項物件 思路 不能外部new,只能內部new 構造方法要私有,構造方法私有後只能類自己呼叫 需要將物件 通過類自己的來構造例項 的引用變數設定成static修飾的這樣就屬於類本身,只有乙份,即乙個例項物件 構造的物件需要提供給外部,由於無法new物件來呼叫這個方法,因此需要乙...
建立型 單例模式
單例模式是所有模式中我們平常用的最多而且比較好理解的乙個模式。保證乙個類緊乙個例項,並提供乙個訪問它的全域性訪問點。在一些情況下,我們可能需要某個類只能建立出乙個物件,既不讓使用者用該類例項化出多餘兩個的例項。單例類 singleton 單例類只可以建立出乙個例項。只有乙個參與者,可以看出它是乙個很...
建立型 單例模式
定義 作為物件的建立模式,單例模式確保某乙個類只有乙個例項,而且自行例項化並向整個系統提供這個例項。這個類稱之為單例類。特點 單例類只能有乙個例項 單例類必須自己建立自己的唯一例項 單例類必須給所有的其他物件提供這一例項。餓漢模式 單例模式singleton 應用場合 有些物件只需要乙個就足夠了,如...