Définition: Le comportement d'une classe ou de son algorithme peut être modifié au moment de l'exécution. En mode politique, nous créons un objet représentant diverses politiques et un objet de contexte dont le comportement change à mesure que l'objet politique change. L'objet politique modifie l'algorithme d'exécution de l'objet de contexte.
Caractéristiques:
1. L'algorithme peut être commuté librement.
2. Évitez d'utiliser plusieurs conditions pour juger.
3. Bonne évolutivité.
Applications dans le développement au niveau de l'entreprise et les cadres communs: Java.servlet.http.httpsservlet Méthode
Exemple: comportement de fonctionnement sur deux nombres.
Demo de classe publique {public static void main (String [] args) {Strategy Strategy1 = new StrategyAdd (); Stratégie Stratégie2 = New StrategyDiv (); Context Context1 = nouveau contexte (stratégie1); context1.exécute (10, 5); context1 = nouveau contexte (stratégie2); context1.exécute (10, 5); }} Stratégie d'interface {public void dooperation (int num1, int num2);} class StrategyAdd implémente la stratégie {public void dooperation (int num1, int num2) {System.out.println ("exécuter addition"); System.out.println (num1 + "+" + num2 + "=" + (num1 + num2)); }} classe StrategySub implémente la stratégie {public void dooperation (int num1, int num2) {System.out.println ("exécuter la soustraction"); System.out.println (num1 + "-" + num2 + "=" + (num1-num2)); }} Classe StrategyMul implémente la stratégie {public void dooperation (int num1, int num2) {System.out.println ("Exécuter la multiplication"); System.out.println (num1 + "*" + num2 + "=" + (num1 * num2)); }} class StrategyDiv implémente la stratégie {public void dooperation (int num1, int num2) {System.out.println ("Execute Division"); System.out.println (num1 + "/" + num2 + "=" + (num1 / num2)); }} Contexte de classe {stratégie de stratégie privée; Contexte public (stratégie stratégique) {this.strategy = stratégie; } public void execute (int num1, int num2) {Strategy.Dooperation (num1, num2); }}Le modèle de politique met l'accent sur les changements d'exécution. Peut-être que dans le code ci-dessus, ces modifications d'exécution ne sont pas bien reflétées. Nous pouvons assumer un scénario pratique, c'est-à-dire lorsqu'un paramètre d'objet est transmis dans une méthode, supposons que nous devons choisir différentes méthodes en fonction des différents paramètres, nous considérerons IF-Else pour juger, tandis que le modèle de politique classe ces if-else, chaque classe, puis l'objet arrive et appelle directement la méthode d'interface politique. La classe spécifique des paramètres d'objet appartient est jugée par JVM. Nous n'avons pas besoin de comprendre les types d'attribut de paramètres de l'objet, etc.
Ce qui précède est tout le contenu de cet article. J'espère que cela sera utile à l'apprentissage de tous et j'espère que tout le monde soutiendra davantage Wulin.com.