**기본적인 로직의 흐름을 서브 클래스가 확장
**할 수 있도록 템플릿처럼 제공하는 방법
→ 추상 클래스는 템플릿을 제공하고 서브 클래스에서 로직을 구현
슈퍼클래스에 기본적인 로직의 흐름을 만들고 기능을 추상 메소드나 오버라이딩이 가능하도록 만든 뒤
**서브클래스에서 이런 메소드를 필요에 맞게 구현해서 사용
**하도록 하는 방법
public abstract class Car {
void stopping() {}
void running() {}
}
public class GoodCar {
@Override
void stopping() {
System.out.println("좋은 브레이크");
}
@Override
void running() {
System.out.println("빠른 속도");
}
}
예시가 조금 이상하지만 위처럼 템플릿을 제공하고 그에 따른 구현을 한다