상속의 정의
기존의 클래스를 재사용하여 새로운 클래스를 작성하는 것
Why?
- 재사용성
- 코드 중복 제거
- 생산성 및 유지 보수 용이
자바의 상속
자바에서는 상속받고자 하는 클래스의 이름을 extends
키워드를 사용하여 상속을 수행한다.
class Super {}
class Sub extends Super {}
상속 관계를 그림으로 표현하면 아래의 Figure 1과 같다.
Figure 1. 상속 관계도
단일 상속 (Single inheritance)
자바에서는 단일 상속만 허용한다. C++에서는 이와 다르게 다중 상속(Multiple inheritance)를 허용하지만 자바에서는 단일 상속만을 허용하는 이유는 다음과 같다.
- 클래스 간의 관계가 복잡해짐
- 서로 다른 두개의 클래스로부터 상속을 받은 멤버간의 이름이 같은 경우 구별하기 어려움 (C++에서는 이 문제를 다른 방식으로 허용)
- 클래스 간의 관계가 보다 명확해짐
'Programming > Java' 카테고리의 다른 글
다형성 (Polymorphism) (0) | 2015.07.12 |
---|---|
제어자(Modifier) (0) | 2015.06.28 |
오버라이딩 (Overriding) (0) | 2015.06.24 |