[JAVA] 오버라이딩(Overriding) 정리

2020. 8. 1. 21:59Programming Language/JAVA

반응형

오버라이딩(Overriding)

상속관계에 있는 부모 클래스의 메서드를 자식클래스에서 재정의 하는것을 의미한다.


※ 특징

1) 메서드명이 동일 해야한다.

- 부모클래스에서 정의한 메서드와 자식클래스에서 재정의한 메서드의 메서드명이 같아야 한다.

2) 매게변수가 동일 해야한다.

3) 리턴 타입이 동일 해야한다.

4) 접근 범위가 같거나 넓은 접근 제어자를 사용해야한다.

- 부모클래스에서 정의한 메서드의 접근 제어자와 같거나 보다 접근범위가 넓은 접근 제어자로 자식클래스의 메서드를 재정의 해야한다.

 

  * 접근제어자 접근범위가 넓은 순서 : public > protected > default > private(오버라이딩 불가)

5) 부모클래스에서 정의한 메서드의 예외(Exception) throws 보다 좁은 예외를 throws 해야한다.

- 이해를 돋기위해 Exception 의 자식클래스에 존재하는 NullPointerException으로 재정의 했다.


1. main() 메서드 

  • 자식클래스 객체 생성
  • 오버라이딩된 메서드 호출

2. 출력 결과

- 출력결과를 통해 오버라이딩된 자식클래스의 메서드가 호출된걸 알 수 있다. 


SOURCE CODE

 

hyunmin94/JavaExam

Contribute to hyunmin94/JavaExam development by creating an account on GitHub.

github.com

 

반응형