Java 對Java24種設計模式的想法和理解

2021-08-03 19:18:17 字數 781 閱讀 8872

一.工廠模式和策略模式的區別

1.簡單工廠模式:客戶端傳乙個條件進工廠類,工廠類根據條件建立相應的產品物件,並return給客戶端,供客戶端使用,即客戶端使用的是工廠類產生的產品物件。

2.策略模式:

客戶端建立乙個context類物件a(可以看做是工廠模式中工廠類),建立乙個策略物件並傳參給物件a,然後客戶端使用a物件的某些方法來使用前面傳參進來的策略,即客戶端是通過a物件使用策略的。

1.工廠模式是通過條件生產出產品給客戶端使用。而策略模式是客戶端使用傳參給context的策略,傳入策略不同,呼叫同樣方法得到的結果不同。

2.工廠模式:客戶端是使用工廠類生產的物件進行操作的,策略模式:客戶端使用自己傳給context的策略的物件進行操作的。

3.依賴倒轉原則:

面向介面的標誌,針對於抽象程式設計而不是針對細節程式設計,即程式中所有的依賴關係都是終止於抽象類或者介面,那就是物件導向設計,反之那就是過程化的設計,結合黎克特制代換原則:子類可以代替父類,便於擴張,並且不需要修改父類型別模組的又符合

開閉原則

,所以可以發現高層模組不應該依賴低層模組,都應該依賴於抽象類.

4.裝飾模式:

在不改變原有類的**的情況下,動態的為已有的功能新增更多功能的一種方式。裝飾的功能放在單獨的類中,並讓這個類包裝它所要裝飾的物件,因此,當需要執行特殊行為時候,客戶**就可以在執行時根據需要有選擇地,按順序地使用裝飾功能包裝物件。

優點:把類中的裝飾功能從類中搬移去除,可以簡化原有的類。有效地把類的核心職責和裝飾功能區分開,而且可以去除類中重複的裝飾邏輯。

java 24 內部類詳解

一.內部類 1 內部類的定義 通俗的講就是在乙個類的裡面再定義乙個類。2 內部類可以public,private,protected等修飾,也可以是靜態static。二.四種內部類的實現 1 靜態內部類 例子 class innerclass public class staticinnerclas...

java 24點演算法實現

折騰了乙個中午寫了乙個24點的演算法,試驗了一下效果還不錯,這個演算法沒有啥技巧也就是把全部的可能性給算一遍,如下 author 百歲 baisui taobao.com date 2013 3 27 public class test24 for int i 0 i param.length i ...

從頭認識java 2 4 邏輯運算子

這一章節我們來討論一些邏輯運算子。邏輯運算子 注意點 1 使用邏輯運算子,其實就是運算子兩側的表示式先算出布林值,然後再進行比較 package com.ray.ch01 public class test private static boolean test1 int b,int c priva...