[JAVA] Modèle de chaîne de responsabilité

Appel des objets dans l'ordre </ font>

Design Pattarm MENU

Vérifiez avec la structure de classe suivante

classe Explication
abstract
chain.class
Définir la fonction de chaîne
Le champ suivant stocke l'instance d'objet suivante
set():Définissez les objets suivants
doChain()Définir
chai1.class~chain3.class Mettre en œuvre la chaîne
user(Main.class) Contrôle de fonctionnement
  • Utilisateur Inclut la signification que les autres développeurs utilisent ce modèle

abstract_class_chain


abstract class chain{
   String name = this.getClass().getName();
   chain  next;             //Stocker les objets suivants

   chain set(chain next){
         this.next=next;
         return this.next;  //Renvoie l'objet suivant
   }

   abstract void doChain();
   void  print(){
         System.out.println(name);}
}

chain1.class


class chain1 extends chain{
      void   doChain(){
             print();
             if(next != null){next.doChain();}  //DoChain de l'objet suivant()Courir
      }
}

chain2.class


class chain2 extends chain{
      void   doChain(){
             print();
             if(next != null){next.doChain();} 
      }
}

chain3.class


class chain3 extends chain{
      void   doChain(){
             print();
             if(next != null){next.doChain();}
      }
}

user(Main.class)


public static void main(String[] args){
   chain1 ch1 = new chain1();
   chain2 ch2 = new chain2();
   chain3 ch3 = new chain3();
   ch1.set(ch2).set(ch3);
   ch1.doChain();
}

Recommended Posts

Modèle de chaîne de responsabilité
Modèle de chaîne de responsabilité
Modèle de conception ~ Chaîne de responsabilité ~
Java8 Lambda Expression & Stream Design Pattern Repenser - Modèle de chaîne de responsabilité -
Quel homme aimez-vous? Identifier les cibles d'amour en utilisant le modèle de la chaîne de responsabilité
Exemple d'application du modèle de conception (n ° 1)