상속

- 이미 개발된 클래스를 재사용하여 새로운 클래스를 만들때 중복되는 코드를 줄일 수 있다.
- 부모클래스의 한번의 수정으로 모든 자식 클래스까지 수정되는 효과가 있어 유지보수 시간이 줄어든다.
  • 클래스 상속

       -자식 클래스 선언 시 부모 클래스 선택

       -extends 뒤에 부모 클래스 기술

 

class 자식클래스 extends 부모클래스{

//필드

//생성자

//메소드

}

  •  여러개의 부모 클래스 상속할 수 없음
  •  부모 클래스에서 private 접근 제한 갖는 필드와 메소드는 상속 대상에서 제외
  •  부모와 자식 클래스가 다른 패키지에 존재할 경우 default 접근 제한된 필드와 메소드 역시 제외

 

 

 메소드 재정의(오버라이딩/ Overriding)

  •  부모클래스의 메소드가 자식 클래스에서 사용하기에 부적합할 경우 자식클래스에서 수정하여 사용

 

- 메소드 재정의 방법

  1. 부모 메소드와 동일한 시그니처 가져야 함
  2. 접근 제한 더 강하게 재정의할 수 없음
  3. 새로운 예외를 throws 할수 없음

- 메소드가 재정의될 경우 부모 객체 메소드가 숨겨지며, 자식 객체에서 메소드 호출하면 재정의된 자식 메소드가 호출된다. 

부모 메소드 호출

자식 클래스 내부에서 재정의된 부모 클래스 메소드를 호출해야 하는 경우 명시적으로 super 키워드 붙여 부모 메소드 호출
super.부모메소드();

 

 

 final 키워드

- 해당 선언이 최종 상태이며 수정될 수 없음을 의미한다

- 클래스 및 메소드 선언 시 final 키워드를 사용하면 상속과 관련됨

 

상속할 수 없는 final 클래스

- 부모클래스가 될 수 없어 자식 클래스 만들수 없음을 의미

스크랩금지

반응형

'IT > Java' 카테고리의 다른 글

[Java] 예외 처리  (0) 2022.01.26
[Java] 예외클래스  (0) 2022.01.26
[Java] 필드선언, 필드 사용  (0) 2022.01.17
[Java] 객체 지향 프로그래밍  (0) 2022.01.17
[Java] 변수와 타입, 선언, 저장, 변수값 교환  (0) 2022.01.13
복사했습니다!