오버라이딩 (Overriding)
1. 정의
오버라이딩은 부모 클래스의 메서드를 자식 클래스에서 재정의하는 것입니다.
즉, 부모로부터 상속받은 메서드의 기능을 덮어씌우는 것입니다.
특징
- 메서드 이름, 매개변수, 반환 타입 모두 부모 클래스와 동일해야 합니다.
- 부모 클래스의 접근 제어자보다 더 좁은 범위로 변경할 수 없습니다 (ex) protected --> private 불가)
- @Override 어노테이션을 붙이는 것이 권장됩니다.\
예시코드
class Animal {
void sound() {
System.out.println("Animal make a sound");
}
}
class Dog extends Animal {
@Override
void sound( ) {
System.out.println("Dog barks");
}
}
public class Main {
public static void main(String[ ] args) {
Animal myAnimal = new Dog( );
myAnimal.sound( ); // Dog barks
}
}
- 언제? 부모 클래스의 메서드를 자식 클래스에서 새로운 동작으로 대체하고 싶을 때
- 어디에서? 상속 관계에서 사용
'JAVA' 카테고리의 다른 글
[Java] 수업 정리 28 print() / println() / printf() 차이점 (24.12.03) (0) | 2024.12.21 |
---|---|
[Java] 수업 정리 28 오버로딩 & 오버라이딩 차이점 (24.12.03) (0) | 2024.12.21 |
[Java] 수업 정리 28 메소드 오버로딩 (24.12.03) (0) | 2024.12.21 |
[Java] 수업 정리 28 Static (24.12.03) (0) | 2024.12.21 |
[Java] 수업 정리 27 (24.11.27) (0) | 2024.12.21 |