Java
추상클래스 - 템플릿 메서드
snail voyager
2020. 9. 3. 22:50
728x90
반응형
Temlpate Method
추상 메서드나 구현된 메서드를 활용하여 전체의 흐름(시나리오)를 정의해 놓은 메서드
final로 선언하여 재정의 할 수 없게 함
Template Method Pattern
- 디자인 패턴의 일종
- 프레임워크에서 많이 사용되는 설계 패턴
- 추상클래스로 선언된 상의 클래스에서 추상메서드를 이용하여 전체 구현의 흐름을 정의하고 구체적인 각 메서드 구현은 하위 클래스에 위임
- 하위 클래스가 다른 구현을 해도 템플릿 메서드에 시나리오 대로 수행됨
public abstract class Car{
public abstract void drive(); //하위 클래스에서 구현
public abstract void stop();
public void start(){ //공통 로직
System.out.println("start");
}
public void turnoff(){
Systemout.println("turn off");
}
final public void run(){ //템플릿 메서드 (정해진 시나리오)
start();
drive();
stop();
turnoff();
}
}
728x90
반응형