티스토리 뷰

Goal

 - 템플릿 메서드에 대해 알아본다.

 - 훅 메서드와 final 예약어에 대해 알아본다.

 

1. 템플릿 메서드 

 - 템플릿 : 틀이나 견본을 의미

 - 추상 메서드나 구현된 메서드를 활용하여 전체의 흐름(시나리오)를 정의 해 놓은 메서드

 - 로직을 구현한 메서드는 final로 선언하여 재정의 할 수 없게 함

 

 - 템플릿 메서드 패턴은 디자인 패턴의 일종으로 프레임 워크에서 많이 사용되는 설계 패턴임

 - 추상 클래스로 선언된 상위 클래스에서 추상 메서드를 이용하여 전체 구현의 흐름을 정의하고 구체적인 각 메서드 구현은 하위 클래스에 위임함

 - 하위 클래스가 다른 구현을 했다고 해도 템플릿 메서드에 정의된 시나리오(로직) 대로 수행됨.

1-1 훅 메서드

 - 하위 클래스가 재정의를 해야 기능을 하는 메서드. 상위 클래스에서는 body의 내용 없이 메서드의 선언만 해놓은 상태로, 사용하고자하는 하위 클래스에서 오버라이딩을 통해 기능을 재정의 하고 사용한다.

  -훅 메서드를 abstract로 선언하면, 전체 하위 클래스에서 사용해야 하는 추상 메서드가 된다. 

 

1-2 final 예약어

 - final 변수는 값이 변경될 수 없는 상수임

 - public static final double PI = 3.14; 주로 외부에서 정적으로 사용되는 경우가 많기 때문에 static과 주로 쓰이며, 오직 한 번만 값을 할당할 수 있음.

 - final 메서드는 하위 클래스에서 재정의 (overriding) 할 수 없음

 - final 클래스는 더 이상 상속되지 않음. ex) Java의 String 클래스

 - 프로젝트 구현 시 여러 파일에서 공유해야 하는 상수 값을 하나의 파일에 선언하여 사용하면 편리 함.

 

 

2. 템플릿 메서드 실습 

 

댓글