<객체지향 프로그래밍 33장~36장>
추상클래스란?
추상적이다 (구체적이지 않다)
(추상 메서드)를 포함한 클래스
└ 구현 코드가 없이 선언부만 있는 메서드 ex) public abstract void run();
구현 코드가 없는 메서드는 하위 클래스에서 구현을 해야 한다.
추상 클래스에 2개의 구현코드가 없는 메서드가 있으면 하위 클래스에서 2개를 받아서 하위클래스는
추상클래스가 되지 않는다. 1개만 받은다 해도 하위 클래스는 추상클래스가 된다.
추상 클래스는 new (인스턴스화) 할 수없음 -> 메서드의 바디가 없으니깐 불려질 부분이 없다.
템플릿 메서드 (추상클래스 응용)
템플릿 : 틀이나 견본을 의미
템플릿 메서드 : 추상 메서드나 구현된 메서드를 활용하여 전체의 흐름을 정의 해
놓은 메서드 -> final로 선언하여 재정의 할 수 없게 함
ex) public void washCar() {} <- 추상 메서드는 아니다. 근데 내용은 없다=하위 메서드에서 오버라이딩을 하여 사용가능
<어떤 클래스는 안쓰고 어떤 클래스는 쓸수 있음>
코딩해 보세요
Car 추상클래스
Avante 클래스
//소나타 그랜져 제네시스는 출력문만 다르고 동일
CarTest
결과
'백엔드 > Java' 카테고리의 다른 글
<FAST CAMPUS>자바 웹개발-객체지향 프로그래밍 (0) | 2021.01.18 |
---|---|
<FAST CAMPUS>자바 웹개발-객체지향 프로그래밍 (0) | 2021.01.12 |
<FAST CAMPUS>자바 웹개발 - 객체지향 프로그래밍 (0) | 2021.01.09 |
<FAST CAMPUS>자바 웹개발 - 객체지향 프로그래밍 (0) | 2021.01.06 |
<FAST CAMPUS>자바 웹개발 - 객체지향 프로그래밍 (0) | 2020.12.31 |
댓글