🌎 Web/Java
[Java] 추상 클래스
오늘 ONEUL
2022. 12. 7. 11:58
07 상속
07-3 추상 클래스
추상 클래스란?
- 여러 클래스의 공통된 특성(필드, 메소드)를 추출해서 선언한 것을 추상클래스라고 한다.
- 추상 클래스와 실체 클래스는 부모, 자식 클래스로서 상속관계를 가진다.
추상 클래스의 용도
- 공통된 필드와 메소드의 이름을 통일할 목적
- 실체 클래스를 작성할 때 시간 절약
- 추상 클래스는 실체 클래스의 설계 규격 → 객체 생성용 X
추상 클래스 선언
- abstract 키워드를 이용하여 선언한다.
- new 연산자로 객체를 생성할 수 없고, 상속을 통해 자식 클래스만 만들 수 있다.
public abstract class 클래스 {
// 필드
// 생성자 -> 자식 객체가 생성될때 super(...)로 호출
// 메소드
}
추상 메소드와 재정의
- 메소드 선언만 통일하고 실행 내용은 실체 클래스마다 달라야 하는 경우, 실행 내용을 채우도록 강제하려면 추상 메소드를 사용한다.
- abstract 키워드로 선언되고 중괄호가 없다.
- 하위 클래스는 반드시 재정의해서 실행 내용을 채워야 한다.
public abstract class Animal {
public abstract void sound();
}
마무리 핵심 키워드
- 추상 클래스: 클래스들의 공통적인 필드와 메소드를 추출해서 선언한 클래스를 말한다.
- 추상 메소드: 추상 클래스에서만 선언할 수 있고, 메소드의 선언부만 있는 메소드를 말한다. 추상 메소드는 자식 클래스에서 재정의되어 실행 내용을 결정해야 한다.
※ 이 내용은 책 [혼자 공부하는 자바]를 보고 정리한 내용입니다.