Voici un résumé du ** modèle de méthode de modèle ** dans le modèle de conception du GoF.
C'est un programme qui affiche le nom, la puissance offensive et la puissance défensive du monstre.
Ceci est une classe de modèle.
AbstractMonster.java
public abstract class AbstractMonster {
public String name;
public abstract int getAttack();
public abstract int getDefense();
public final void showInfo() {
System.out.print("Nom:");
System.out.println(name);
System.out.print("Puissance offensive:");
System.out.println(getAttack());
System.out.print("Puissance défensive:");
System.out.println(getDefense());
System.out.println();
}
}
Une classe qui implémente les méthodes définies dans la classe AbstractMonster.
Slime.java
public class Slime extends AbstractMonster {
public Slime(String name) {
this.name = name;
}
public int getAttack() {
return 15;
}
public int getDefense() {
return 10;
}
}
Une classe qui implémente les méthodes définies dans la classe AbstractMonster.
Dragon.java
public class Dragon extends AbstractMonster {
public Dragon(String name) {
this.name = name;
}
public int getAttack() {
return 60;
}
public int getDefense() {
return 45;
}
}
Cette classe effectue le traitement principal.
Main.java
public class Main {
public static void main(String[] args) {
AbstractMonster slime = new Slime("Vase");
AbstractMonster dragon = new Dragon("Dragon");
slime.showInfo();
dragon.showInfo();
}
}
Nom: Slime
Puissance d'attaque: 15
Puissance défensive: 10
Nom: Dragon
Puissance d'attaque: 60
Puissance défensive: 45
Dans le modèle de méthode modèle, l'algorithme est décrit par la méthode modèle de la super classe, il n'est donc pas nécessaire de décrire l'algorithme un par un du côté de la sous-classe. Par exemple, si vous avez créé des classes similaires, Class1, Class2, Class3 ... sans utiliser le modèle de méthode modèle, et qu'un bogue est trouvé dans Class1, le bogue sera reflété dans Class2, Class3 ... Doit être. Si vous créez avec le modèle de méthode de modèle, même si vous trouvez un bogue dans la méthode de modèle, il vous suffit de corriger la méthode de modèle.
Cet article et l'exemple de programme ont été créés à partir des livres suivants.
C'était très facile à comprendre et j'ai beaucoup appris. Je vous remercie. Les explications détaillées des modèles de conception et des exemples de programmes sont écrites, veuillez donc également consulter les livres.
Recommended Posts