오버라이딩(overriding)
: 상속받은 조상의 메서드를 자신에 맞게 변경하는 것
조건
- 선언부가 조상 클래스의 메서드와 일치해야 한다.
(반환타입, 메서드이름, 매개변수 목록)- 접근 제어자를 조상클래스의 메서드보다 좁은 범위로 변경할 수 없다.
- 예외는 조상 클래스의 메서드보다 많이 선언할 수 없다.
오버로딩 vs 오버라이딩
- 오버로딩 : 기존에 없는 새로운 메서드를 정의하는 것(new) - 이름만 같음.
- 상속과 관계 없음
- 오버라이딩 : 상속받은 메서드의 내용을 변경하는 것( change, modify)
- 상속과 관련 있음