Programming Languages/JAVA
Java/ 추상 메서드, 클래스
YUYA
2020. 12. 28. 14:07
다형성
1) OO의 4대 특성 중 하나
2) OO의 다른 특성인 상속에 기반
3) 상속과 다형성은 OO의 또 다른 특성인 추상화에 기반
- 여러 클래스에서 공통분모를 뽑아 부모 클래스를 만드는 과정
- 자식마다 달리 작동하는 구현을 부모의 메서드 시그내처로 일반화하는 과정
- 추상화는 좀 더 복잡한 문제 해결을 위한 것
추상 클래스
<접근 제어자> abstract class <클래스명> {...}
1) 인스턴스를 만들 수 없는 클래스
- 인스턴스를 만들 수 있는 클래스는 구체 클래스라고 함
- 따라서 구체 클래스가 아닌 클래스를 추상 클래스라고도 함
2) 다른 클래스의 부모 클래스가 될 수는 있음
3) 반드시 추상 메서드가 들어 있을 필요는 없음
4) 메서드 구현이 없을 수도 있음
- 메서드 구현이 없다면 그 클래스는 추상 클래스가 되어야 함
5) 실체는 없지만 여러 자식 클래스들의 공통 부분을 별도의 클래스로 분리해서 재사용성 높이기에 적합
구체 클래스
1) 인스턴스 만들 수 있는 클래스
2) 모든 메서드 구현 되어 있음