코딩 공부/JAVA

Java - 상속이란?

유미._. 2023. 6. 14. 15:39
728x90

 

 

상속이란?

 

- 하위 클래스가 상위 클래스의 모든 것을 물려받는다.


- 단, 부모 클래스의 private 접근 제한을 갖는 필드 및 메서드는 자식이 물려받을 수 없다.


- 상속해 주는 클래스를 조상 클래스, 상속받는 클래스는 자손 클래스이다.

- 생성자와 초기화 블록은 상속되지 않는다. 멤버만 상속된다.

- 자손 클래스의 멤버 개수는 조상 클래스보다 항상 같거나 많다.


- 자바는 오직 단일 상속만을 허용한다. 두 개 이상의 클래스로부터 상속받을 수 없다. 그래서 비중이 높은 클래스 하나만 상속하고 나머지는 포함관계로 정의한다.


- 포함 관계는 클래스 안에 포함관계를 맺음으로써 한 클래스의 멤버변수로 다른 클래스 타입의 참조 변수를 선언하는 것을 뜻한다.

 

 

 

상속의 장점

 

- 코드를 공통적으로 관리하기 때문에 상속받은 자식 클래스들은 부모 클래스의 해당 기능을 사용 할 수 있다.

 

- 코드의 추가 및 변경이 용이하다.

 

- 유지보수 시간이 감소되며, 코드의 중복을 줄여준다.

 

 

자바에서 다중 상속이 안되는 이유

 

상속받은 여러 개의 부모 클래스들에서 동일한 명칭의 필드나 메서드가 있다면, 어떤 부모 클래스의 필드와 메서드를 상속 받아야 하는지, 어떤 부모 클래스에 어떻게 접근해야 하는지 모호한 상황이 발생 된다. 

 

 

 

728x90
반응형