單例設計模式(注釋詳講)

2021-10-10 12:33:43 字數 929 閱讀 9757

1.什麼是設計模式

針對特定的問題提供的固定的最優的解決方案。

在物件導向的程式語言中有23種設計模式:

其中之一:單例設計模式

基本型別變數恒等比較比較的是兩個變數的值是否相等,引用型別變數恒等比較比較的是兩個引用變數引用的位址是否相等。

1】 餓漢式(注釋詳細解釋了為什麼這樣做)

之所以叫餓漢式,是因為物件在類載入的時候就建立了。

//餓漢式

public class single

/*static 是核心,被static修飾的s物件,是single類一載入就在本類中

建立本類物件成員變數。只存在乙個。

物件成員變數s被static修飾後屬於類,可以通過類名.變數的方式使用

但是為了安全性,不讓外類直接訪問,所以把s物件也私有化。

*/private static single s = new single();

/*既然我們把s物件私有化了,那麼我們就需要通過乙個公共的訪問方式來得到

這個物件,所以建立了乙個公共的,返回值型別為single的getsingle()方法,

通過返回s來訪問。

*/public static single getsingle()}12

3456

78910

1112

1314

1516

1718

1920

2122

2】 懶漢式

在呼叫方法時建立物件。

//懶漢式

public class single2

//2)在本類中先宣告私有的靜態的本類物件成員變數

private static single2 s = null;

public static single2 getsingle()

return s;

}

精講Android設計模式 單例模式

單例的優點 1.只有乙個例項,節省開銷 2.全域性使用方便,同時避免頻繁建立和銷毀 使用單例的注意點 要避免造成 記憶體洩漏 單例不僅要滿足執行緒安全,還要注意防止序列化產生新物件。如果單例實現了serializable介面,就必須加入如下方法 列舉單例不用這麼做,因為jvm能保障這點 privat...

詳聊單例模式

發布物件 使乙個物件能夠被當前範圍之外的 所使用。物件逸出 一種錯誤的發布。當乙個物件還沒有構造完成時,就使它被其他執行緒所見。安全發布物件的4種方法 author title singletonex1 description 單例 懶漢模式 執行緒不安全 date 2020 4 11 15 16 ...

單例設計模式(餓漢單例設計模式 懶漢單例設計模式)

1.什麼是單例 單例的意思是乙個類永遠只存在乙個物件,不能建立多個物件。2.為什麼要用單例 開發中有很多的物件我們只需要乙個,例如虛擬機器物件,任務管理器物件 物件越多越佔記憶體,有時候只需要乙個物件就可以實現業務,單例可以節省記憶體空間。3.如何實現單例 單例的實現方式有 餓漢單例設計模式 通過類...