Main
package summary2;
public class Main {
// 다음 메인함수의 내용이 잘 작동하도록 클래스를 구성하세요
// Cat과 Dog의 공통속성을 묶어서 처리할 슈퍼클래스 Animal을 작성하세요
// 필요하다면, 생성자를 수정하여 상속관계에 맞게 작동하도록 수정하세요
// Human에서는 나누어져있는 give메서드를 하나로 통일하세요
public static void main(String[] args) {
Human man = new Human("원빈");
Cat cat = new Cat("나옹이");
Dog dog = new Dog("바둑이");
man.give(cat); // 원빈이 나옹이에게 먹이를 준다
man.give(dog); // 원빈이 바둑이에게 먹이를 준다
}
}
Human
package summary2;
public class Human {
String name;
Human(String name) {
this.name = name;
}
// void give(Cat cat) {
// System.out.printf("%s이 %s에게 먹이를 준다\n", name, cat.name);
// }
// void give(Dog dog) {
// System.out.printf("%s이 %s에게 먹이를 준다\n", name, dog.name);
// }
void give(Animal ob) {
System.out.printf("%s이 %s에게 먹이를 준다\n", name, ob.name);
}
}
Animal
package summary2;
// 공통 속성과 기능은 슈퍼클래스에
public class Animal {
String name;
Animal(String name) {
this.name = name;
}
}
Cat
package summary2;
// 개별 속성과 기능은 서브클래스에
// 서브클래스의 생성자는 반드시 슈퍼클래스의 생성자를 호출
public class Cat extends Animal {
Cat(String name) {
super(name);
}
}
Dog
package summary2;
public class Dog extends Animal {
Dog(String name) {
super(name);
}
}
'AWS CLOUD FRAMEWORK > Java' 카테고리의 다른 글
[Day13] Summary4 (0) | 2023.04.06 |
---|---|
[Day13] Summary3 (0) | 2023.04.06 |
[Day13] summary1 (0) | 2023.04.06 |
[Day15] Ex06 (0) | 2023.04.06 |
[Day13] Ex05 (0) | 2023.04.06 |