Java設計模式學習 策略模式

2021-09-01 20:08:06 字數 1176 閱讀 2665

寫在前面的話

離畢業己經三個多月了,從實習到現在來公司己經快一年了,之前學習的好多東西正因為沒有在現在的專案中體現,怕自己會忘記所有找了些資料重新衝一下電。記得老師曾經說過,把自己學習的知識,寫在部落格裡,這樣方便他人借鑑的同時,自己以後再想回過頭來看也方便,故從現在開始每學習乙個知識點,就記錄一篇文章,些設計模式出自己cbf4life

的《我們的設計模式》大體上與之一至。在知識的海洋裡我永遠只是乙隻無法遊到彼岸的菜鳥。

策略模式【strategy pattern】

介面istrategy只提供乙個可執行的方法:

package com.dsl.strategy;

/** *乙個策略的介面,提供乙個妙計的使用方法,講述的是三國的故事

* @author

* */

public inte***ce istrategy

下面是三個實現類:

package com.dsl.strategy;

public class backdoor implements istrategy

}

package com.dsl.strategy;

public class givengreenlight implements istrategy

}

package com.dsl.strategy;

public class blockenemy implements istrategy

}

乙個錦囊類用來裝妙計呵呵:

package com.dsl.strategy;

/** * 乙個裝妙計的錦囊

* @author dengshenglong

* */

public class context

//提供乙個使用妙計的方法

public void operate()

}

package com.dsl.strategy;

public class zhaoyun

//策略模式的好處就是:體現了高內聚低耦合的特性

}

java設計模式學習之策略模式

1.介紹 在策略模式 strategy pattern 中,乙個類的行為或其演算法可以在執行時更改。這種型別的設計模式屬於行為型模式。比如我們在計算兩個數字的時候,會有數字相加,數字相減,數字相乘,數字相除幾種方法,一般做法,我們會用乙個 if else 來判斷,但是這樣有乙個不好的地方就是 複雜化...

java 設計模式 策略模式

就是比較兩個類別時,要自己寫乙個比較器,這個比較器實現了 comparator介面,裡面實現public int compare object o1,object o2 方法。在實體類裡面要有乙個成員變數時這個比較器,這個實體類也要實現了 comparable介面。例如 cat有兩個屬性,heigh...

java設計模式 策略模式

策略模式 strategy pattern 體現了兩個非常基本的物件導向設計的原則 1 封裝變化的概念 2 程式設計中使用介面,而不是對介面的實現。策略模式定義了乙個共同的抽象演算法介面,其子類實現這個介面定義的方法,並且都有各自不同的實現,這些演算法實現可以在客戶端呼叫它們的時候互不影響的變化。子...