
- 재정의되지 않은 메서드: this 키워드와 동일한 결과.
- 재정의된 메서드: 부모의 원본 메서드 의미.
super(); - 부모 클래스의 생성자 의미.super() 키워드 사용.@Override 어노테이션 사용.상속에서 오버라이드를 통해 부모 클래스의 메서드를 자식 클래스에서 재정의하여 사용할 수 있으며, 오타 방지를 위해 @Override 어노테이션을 사용한다.
오버라이드 예시
// Animal 클래스 정의
class Animal {
// 동물 소리 메서드
public void sound() {
System.out.println("Animal makes a sound");
}
}
// Dog 클래스, Animal을 상속받음
class Dog extends Animal {
// Animal 클래스의 sound 메서드 오버라이드
@Override
public void sound() {
System.out.println("Dog barks");
}
}
// 메인 클래스
public class OverridingExample {
public static void main(String[] args) {
// Animal 객체에 Dog 할당
Animal animal = new Dog();
// Dog의 bark() 메서드 호출
animal.sound();
}
}