동물 (상속 연습)
public class Animal {
private double weight;
String picture;
void setWeight(double weight) {this.weight = weight;}
double getWeight() {return weight;}
void eat() { System.out.print("eat()가 호출되었음");}
void sleep() {System.out.print("sleep()가 호출되었음");}
public String toString() {
return "몸무게: " + weight + "kg - 그림설명: " + picture;
}
}
public class Eagle extends Animal{
private int wings = 0;
void fly() {
sleep();
System.out.print(":");
System.out.println("fly()가 호출되었음");
}
public String toString() {
return "몸무게: " + getWeight() + "kg - 그림설명: " + picture + " - 날개: " + wings;
}
}
public class Lion extends Animal{
private int legs= 4;
void roar() {
eat();
System.out.print(":");
System.out.println("roar()가 호출되었음");
}
public String toString() {
return "몸무게: " + getWeight() + "kg - 그림설명: " + picture + " - 다리: " + legs;
}
}
import java.util.Scanner;
public class Practice_60 {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
Animal animal = new Animal();
System.out.println("Animal 객체 animal을 생성합니다.");
System.out.print("사진에 추가할 문장을 입력하세요: ");
animal.picture = input.next();
System.out.print("몸무게를 입력하세요: ");
animal.setWeight(input.nextDouble());
animal.eat();
System.out.println("\n");
Lion buba = new Lion();
System.out.println("Lion 객체 buba를 생성합니다.");
System.out.print("사진에 추가할 문장을 입력하세요: ");
buba.picture = input.next();
System.out.print("몸무게를 입력하세요: ");
buba.setWeight(input.nextDouble());
buba.roar();
System.out.println("\n");
Eagle paco = new Eagle();
System.out.println("Eagle 객체 paco을 생성합니다.");
System.out.print("사진에 추가할 문장을 입력하세요: ");
paco.picture = input.next();
System.out.print("몸무게를 입력하세요: ");
paco.setWeight(input.nextDouble());
paco.fly();
System.out.println("\n");
System.out.println("Animal 객체 animal의 정보입니다.");
System.out.println(animal.toString());
System.out.println("Lion 객체 buba의 정보입니다.");
System.out.println(buba.toString());
System.out.println("Eagle 객체 paco의 정보입니다.");
System.out.println(paco.toString());
System.out.println("\n");
input.close();
}
}
결과: