說到設計模式,要先了解設計模式的原則:java
瞭解了以上設計模式的設計原則,在去理解和學習設計模式就很簡單了,在咱們開發中設計模式一共23種,這裏簡單介紹經常使用的幾種:面試
//餓漢式
public class HSingleton{ pravite static HSingleton hurgry = new HSingletion(); private HSingleton(){} public static HSingleton getSingletonHurgry(){ return hurgry; } }
//懶漢式
public class LSingleton{
private static LSingleton instence = null;
private LSingleton(){}
public static LSingleton getInstence(){
if(instence == null){
instence = new LSingleton();
}
return instence;
}
}
3.代理模式:爲其餘大對象提供一個代理,以控制對當前對象的訪問,或者減小太大資源的消耗。例如spring AOP的實現,mybatis中的dao層,能夠直接調用接口的方法,接口中的方法就是代理方法。算法
4.策略模式:設計一個頂級接口,用不一樣的算法方法去實現相同的功能,就是策略模式。spring
5.模板模式:定義一個流程,在實現某個模塊功能的時候,按照這個流程開發。應用:定義一個抽象父類定義流程,或者經常使用的方法和常量,子類實現父類,實現具體細節方法。編程
6.裝飾模式:對一個對象作一些裝飾,使對象具有新的功能,並且是動態的。要求裝飾對象和被裝飾對象實現同一個接口設計模式
23種設計模式種以上幾種比較經常使用,有興趣的能夠在網上了解一下其餘幾種:總結以下性能優化