首頁 > Java > java教程 > 主體

如何使用Java策略模式取代if else

王林
發布: 2023-05-13 18:34:14
轉載
1414 人瀏覽過

別再大量的if else了, 程式碼太簡陋了, 可讀性太差了.

策略模式的定義

....

簡單來說每個模組相互獨立互不影響提高代碼的可擴展性!

舉栗子, 如下爛代碼

if ("花呗支付".equals(type)) {
 
	// 花呗支付的业务逻辑处理
 
} else if ("微信支付".equals(type)) {
 
	// 微信支付业务逻辑
 
} else if ("云闪付".equals(type)) {
 
	// 云闪付支付业务逻辑
 
} else if ("...".equals(type)) {
			
    // ....
}
登入後複製

思考: 可以定義一個支付接口, 支付方法, 不同的支付方式寫不同的實現類別, 互不干擾, 互不影響, 以後添加新的支付方式, 只需添加新的實現類實現支付接口, 重寫他的支付方法即可, 無需改動之前寫的代碼.

正好今天敲程式碼的時候使用到了該設計模式, 簡單分享一下

定義介面

如何使用Java策略模式取代if else

定義不同的實作類別

如何使用Java策略模式取代if else

每個實作類別都會處理自己的業務, 互不干擾, 相互隔離, 例如如下兩個實作類別實作了相同介面處理不同的業務

如何使用Java策略模式取代if else

如何使用Java策略模式取代if else

#定義介面

如何使用Java策略模式取代if else

#是不是比大量的if else 簡潔多了~

把每個不同的模組抽取出來, 透過bean的名稱取得介面的實作類別, 執行方法

以上是如何使用Java策略模式取代if else的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:yisu.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板