Design Architecture/Design Pattern 예제
Template Method 예제
lipnus
2021. 9. 28. 20:31
반응형
public class Main {
public static void main(String[] args) {
Beberage coffee = new Coffee();
coffee.prepareRecipe();
}
}
public abstract class Beberage {
final void prepareRecipe() {
boilWater();
brew();
pourInCup();
addCondiments();
}
public void boilWater() {
System.out.println("물끓임");
}
abstract void brew();
public void pourInCup() {
System.out.println("컵에따름");
}
abstract void addCondiments();
}
public class Coffee extends Beberage{
@Override
public void brew() {
System.out.println("커피원두");
}
@Override
public void addCondiments() {
System.out.println("설탕프림");
}
}
public class Tea extends Beberage{
@Override
public void brew() {
System.out.println("티벡");
}
@Override
public void addCondiments() {
System.out.println("레몬띄우기");
}
}
반응형