Java基礎總結之設計模式(三)

2021-08-25 02:42:01 字數 1013 閱讀 4429

單例模式:(餓漢式):

package h.l.pattern3;

public class student

private static student s = new student();

public static student getstudent()

}

package h.l.pattern3;

public class studentdemo

}

所謂餓漢式就是一載入類就建立乙個物件,就好比,你放學回家很餓,一看見桌上的饅頭就吃了一樣的道理。

單例模式:(懶漢式):

package h.l.pattern3;

public class student

private static student s = null;

public static student getstudent()

return s;

}}

package h.l.pattern3;

public class studentdemo

}

所謂懶漢式就是用的時候才new物件。

總結:單例模式的思想就是:保證類在記憶體中只有乙個思想。如果寫單例模式,那麼開發中建議使用餓漢式,面試中建議懶漢式

開發中:餓漢式(是不會出現問題的單例模式)

面試中:懶漢式(可能會出現問題的單例模式)

a:懶載入(延遲載入)

b:執行緒安全問題:

a:是否是多執行緒  是

b:是否有共享資料  是

c:是否有多條語句操作共享資料  是

因此在懶載入中要保證執行緒安全,則需要在方法上加上sychronized關鍵字,保證乙個方法是原子操作。jdk原始碼中runtime類(作用是使應用程式能夠與其執行的環境想連線)也是餓漢式的體現。

JAVA基礎之設計模式

設計模式 對問題行之有效的解決方式。其實是一種思想。1.單例設計模式 解決的問題 就是可以保證乙個類在記憶體中的物件唯一性。即乙個類只建立乙個物件,多個程式呼叫時不建立物件,只是引用。比如對於多個程式使用同乙個配置資訊物件時,就需要保證該物件的唯一性。如何保證物件唯一性呢?1.不允許其他程式用new...

設計模式總結之工廠模式 java實現

這是針對面試的解答 這是面試經常會被問到的設計模式,工程模式分為簡單工廠模式 factory 靜態工廠模式 工廠方法模式 factory method 抽象工廠模式 abstract factory 其中後兩者屬於23種常用的設計模式。簡單工廠模式不屬於23種常用的設計模式。首先讓我們來看下簡單工廠...

大話設計模式之裝飾模式(Java總結)

在開發過程中,我們會遇到要將某乙個功能賦予額外的職責,並把這些增加了額外職責的功能按照正確的順序串聯起來進行控制,且可以靈活地調換這些順序,輸出最後執行的結果,裝飾模式就是這樣乙個非常有意思的設計模式。衣服 鞋子 領帶 披風都可以理解為對人的裝飾。而且可以選擇先穿衣服再穿鞋子,或者先穿鞋子,再穿衣服...