개발 무지렁이

[Java] 상속관계에서의 우선순위 본문

Backend/자바

[Java] 상속관계에서의 우선순위

Gaejirang-e 2022. 12. 11. 22:24
메서드는 가장 아래에 오버라이딩된 메서드가 우선순위를 가진다.
class Main {
    public static void main(String[] args) {
        사람 a사람 = new 사람(); // 사람리모콘
        a사람.이름 = "사람";

        동물 a동물 = a사람; // 리모콘 버튼 빼기 => 동물리모콘
        a동물.이름 = "동물";

        System.out.println(a사람.이름); // 사람
        a사람.공격(); // 사람이 공격합니다

        System.out.println(a동물.이름); // 동물
        a동물.공격(); // 사람이 공격합니다
    }
}

class 동물 {
    String 이름;
    void 공격() {
        System.out.println("동물이 공격합니다");
    }
}

class 사람 extends 동물 {
    String 이름;
    void 공격() {
        System.out.println("사람이 공격합니다");
    }
}
Comments