[JAVA] 오버라이딩(Overriding) 정리
2020. 8. 1. 21:59ㆍProgramming Language/JAVA
반응형
■ 오버라이딩(Overriding)
상속관계에 있는 부모 클래스의 메서드를 자식클래스에서 재정의 하는것을 의미한다.
※ 특징
1) 메서드명이 동일 해야한다.
- 부모클래스에서 정의한 메서드와 자식클래스에서 재정의한 메서드의 메서드명이 같아야 한다.
2) 매게변수가 동일 해야한다.
3) 리턴 타입이 동일 해야한다.
4) 접근 범위가 같거나 넓은 접근 제어자를 사용해야한다.
- 부모클래스에서 정의한 메서드의 접근 제어자와 같거나 보다 접근범위가 넓은 접근 제어자로 자식클래스의 메서드를 재정의 해야한다.
* 접근제어자 접근범위가 넓은 순서 : public > protected > default > private(오버라이딩 불가)
5) 부모클래스에서 정의한 메서드의 예외(Exception) throws 보다 좁은 예외를 throws 해야한다.
- 이해를 돋기위해 Exception 의 자식클래스에 존재하는 NullPointerException으로 재정의 했다.
1. main() 메서드
- 자식클래스 객체 생성
- 오버라이딩된 메서드 호출
2. 출력 결과
- 출력결과를 통해 오버라이딩된 자식클래스의 메서드가 호출된걸 알 수 있다.
SOURCE CODE
반응형
'Programming Language > JAVA' 카테고리의 다른 글
[JAVA] 제네릭(Generic) 정리 (0) | 2020.08.03 |
---|---|
[JAVA] 오버로딩(Overloading) 정리 (0) | 2020.08.01 |
[JAVA] 인터페이스(interface) 정리 (0) | 2020.07.31 |
[JAVA] 추상클래스(abstract class) 정리 (0) | 2020.07.31 |
[JAVA] 다운캐스팅(DownCasting) 정리 (0) | 2020.07.31 |