**
設計模式之
strategy
——簡歷篇
表弟馬上就要大學畢業,找工作要寫簡歷(resume),因此他就來問我關於這方面的問題。我告訴他最好寫兩種型別的簡歷,一種是用中文寫的,一種是用英文寫的,如果是國企的話,就投中文簡歷(chineseresume),如果是外企的話,就投英文簡歷(englishresume),嘿嘿,原因在這裡就沒必要多說了吧。
下面讓我們看看這個過程該如何實現呢?
1、我們先定義簡歷(resume)介面類:
public inte***ce resume
2、再定義對簡歷(resume)介面的具體實現:
a:中文簡歷(chineseresume)
public class chineseresume implements resume
}b:英文簡歷(englishresume)
public class englishresume implements resume
}3、定義投遞策略(strategy)類:
public class strategy
public void postresume()
}4、編寫測試類:
public class test
}5、說明:
a:strategy模式主要是定義一系列的演算法,把這些演算法乙個個封裝成單獨的類。
b:在本例中,中文簡歷(chineseresume)和英文簡歷(englishresume)就相當於兩種演算法,同時我們把它定義成兩個單獨的類。
c:在找工作時,我們可以根據企業型別選擇投遞那種簡歷,strategy模式和factory模式的不同之處是:strategy模式主要是用來選擇不同的演算法,而factory模式的重點是用來建立對
設計模式之Strategy 策略模式系列1
看了jdon上寫的的策略模式,例子很簡單,有些錯誤。文章寫的比較早,其實現在的策略模式大多是用enum來實現,會簡單的多,但是思想不變 不同的演算法或者行為各自封裝,使用者自行挑選。先摘抄他上面的 錯誤已經改正 strategy策略模式是屬於設計模式中 物件行為型模式,主要是定義一系列的演算法,把這...
設計模式之策略模式 Strategy
策略模式 定義了演算法家族,分別封裝起來,讓它們之間可以互相替換,此模式讓演算法的變化,不會影響到使用演算法的客戶 只要在分析過程中聽到需要在不同時間應用不同的業務規則,就可以考慮使用策略模式處理這種變化的可能性 涉及三個角色 環境 context 角色 持有乙個strategy的引用,通過條件來分...
設計模式之 Strategy 策略模式
策略模式簡述 優點 1 可以動態的改變物件的行為 缺點 1 客戶端必須知道所有的策略類,並自行決定使用哪乙個策略類 2 策略模式將造成產生很多策略類 今天本人實現的主要是 策略模式之comparable和comparator介面。用大白話說,就是我們在比較大小的時候,在類中定義乙個策略的比較器,由該...