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