適合使用策略模式的情景
(1)一個類定義了多種行文已慢, 并且這些行為在這個類的方法中以多個條件語句的形式出現(xiàn)缝裤, 那么可以使用策略模式避免在類中使用大量的條件語句刻肄。
(2)程序的主要類(相當(dāng)于上下文角色)不希望暴露復(fù)雜的阐污, 與算法相關(guān)的數(shù)據(jù)結(jié)構(gòu),那么可以使用策略模式封裝算法突梦,即將算法分別封裝到具體策略中诫舅。
(3)需要使用一個算法的不同實(shí)體。
(1)一個類定義了多種行文已慢, 并且這些行為在這個類的方法中以多個條件語句的形式出現(xiàn)缝裤, 那么可以使用策略模式避免在類中使用大量的條件語句刻肄。
(2)程序的主要類(相當(dāng)于上下文角色)不希望暴露復(fù)雜的阐污, 與算法相關(guān)的數(shù)據(jù)結(jié)構(gòu),那么可以使用策略模式封裝算法突梦,即將算法分別封裝到具體策略中诫舅。
(3)需要使用一個算法的不同實(shí)體。