Heim  >  Artikel  >  Java  >  So verwenden Sie Java Strategy Pattern, um ggf. andere zu ersetzen

So verwenden Sie Java Strategy Pattern, um ggf. andere zu ersetzen

王林
王林nach vorne
2023-05-13 18:34:141408Durchsuche

Verwenden Sie nicht viele davon, sonst ist der Code zu einfach und die Lesbarkeit zu schlecht.

Definition des Strategiemusters

....#🎜 🎜#

Einfach ausgedrückt ist jedes Modul unabhängig voneinander und beeinflusst sich nicht gegenseitig, um die Skalierbarkeit des Codes zu verbessern!

Zum Beispiel der folgende schlechte Code

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

Denken: Ja, definieren Sie eine Zahlungsschnittstelle und eine Zahlungsmethode. Sie beeinträchtigen oder beeinflussen sich gegenseitig nicht, Sie müssen nur eine neue hinzufügen Implementierungsklasse, um die Zahlungsschnittstelle zu implementieren und ihre Zahlungsmethode neu zu schreiben. Den Code, den Sie zuvor geschrieben haben, müssen Sie nicht ändern möchte es kurz teilen

Schnittstelle definieren

#🎜🎜 #

Verschiedene Implementierungsklassen definieren

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

Jede Implementierungsklasse wickelt ihr eigenes Geschäft ab, unabhängig voneinander Interferenz und gegenseitige Isolation, zum Beispiel implementieren die folgenden beiden Implementierungsklassen dieselbe Schnittstelle, um unterschiedliche Geschäfte abzuwickeln

#🎜 🎜#

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

#🎜🎜 #Schnittstelle

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

如何使用Java策略模式取代if elseIst n' Es ist viel einfacher als eine große Anzahl von if else~

Extrahieren Sie jedes einzelne Modul, rufen Sie die Implementierungsklasse der Schnittstelle über den Namen der Bean ab und führen Sie die Methode aus

Das obige ist der detaillierte Inhalt vonSo verwenden Sie Java Strategy Pattern, um ggf. andere zu ersetzen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:yisu.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen