Java 8일차 2(상속, overiding)

2022. 11. 21. 12:24코딩배움일지/JAVA

동물

public class AnimalMain {
    public static void main(String[] args) {
        Animal animal = new Animal();
        Human human = new Human();
        Tiger tiger = new Tiger();

        animal.move();
        human.move();
        tiger.move();

        human.readBooks(); /*각각의 주소에만 존재하는 것*/
        tiger.hunting();


    }
}

 

사람

package j11_상속.동물;

public class Human extends Animal{

    public Human(){
        System.out.println("Human 객체 생성");
    }

    @Override /*동물의 move 를 재정의 하여 걷는걸로 하자*/ /*어노테이션*/
    public void move() {
        System.out.println("사람이 두 발로 걷습니다.");
    }

    public void readBooks(){
        System.out.println("사람이 책을 읽습니다.");
    }

}
public class Tiger extends Animal{

    public Tiger(){
        System.out.println("Tiger 객체 생성");
    }

    @Override
    public void move() {
        super.move();/*부모의 메소드를 호출하라.*/ /*super는 부모의 주소*/
        System.out.println("호랑이가 달립니다.");
    }

    public void hunting(){
        System.out.println("호랑이가 사냥을 합니다.");
    }
}

 

Animal 객체 생성
Animal 객체 생성
Human 객체 생성
Animal 객체 생성
Tiger 객체 생성
동물이 움직입니다.
동물이 움직입니다.
동물이 움직입니다.
사람이 책을 읽습니다.
호랑이가 사냥을 합니다.

Process finished with exit code 0

Animal 객체 생성
Animal 객체 생성
Human 객체 생성
Animal 객체 생성
Tiger 객체 생성
동물이 움직입니다.
사람이 두 발로 걷습니다. /*바뀐다.*/
동물이 움직입니다.
사람이 책을 읽습니다.
호랑이가 사냥을 합니다.

Process finished with exit code 0

 

 

 

'코딩배움일지 > JAVA' 카테고리의 다른 글

Java 8일차 4(다운캐스팅)  (0) 2022.11.21
Java 8일차 3(업캐스팅)  (0) 2022.11.21
Java 8일차 1(상속)  (0) 2022.11.21
Java 8일차 3(배열)  (0) 2022.11.21
Java 8일차1-1( 배열)  (0) 2022.11.21