1、模板方法模式 定義一個操作中的算法的骨架,而將一些步驟延遲到子類中,如JdbcTemplate 2、代理 sPRing的Proxy模式在aop中有體現 3、觀察者 定義對象間的一種一對多的依賴關系,當一個對象的狀態發生改變時,所有依賴于它的對象都得到通知并被自動更新。 spring中Observer模式常用的地方是listener的實現。如applicationListener。 4、適配器(Adapter ) MethodBeforeAdviceAdapter類 5、策略模式 使用了java的繼承和多態 案例1:加減法計算器,定義一個計算類接口,加法和減法類都實現它,加的時候傳入加法對象。 案例2:導出Excel,pdf,Word時,分別創建不同的對象 簡單理解:執行多個事情時,創建多個對象 6、單例模式 解決一個全局使用的類頻繁的創建與銷毀 7、工廠模式 分為三種:簡單工廠,工廠方法,抽象工廠 根據“需求”生產“產品”,解耦“需求”“工廠”和“產品”。
簡單工廠:通過構造時傳入的標識來生產產品,不同產品都在同一個工廠中生產,每新增加一種產品,需要改工廠類,來判斷,這種判斷會隨著產品的增加而增加,給擴展和維護帶來麻煩 簡單工廠項目案例:根據傳入的 不同(比如1對應支付流水,2 對應訂單流水),生成不同類型的流水號
工廠方法:(使一個類的使用延遲到子類) 其中的工廠類根據傳入的A.class類型,反射出實例。 產品接口,產品類A,產品類B,工廠類可以生成不同的產品類對象,如果要隨著產品的增加而增加,工廠類不變,只需新增一個產品類C即可。 項目案例:郵件服務器,有三種協議,POP3,IMAP,HTTP,把這三種做完產品類,在定義個工廠方法
抽象工廠:一個工廠生產多個產品,它們是一個產品族,不同的產品族的產品派生于不同的抽象產品
新聞熱點
疑難解答