[作成手順]
1.以下のようにabstractクラスAnimalを作成する。
public abstract class Animal{
protected String name;
protected Animal(String name){
this.name=name;
}
public abstract void cry();
}
2.以下のようにCat,Dog,Pigクラスを作成する。
class Cat extends Animal{
public Cat(String name) {
super(name);
}
@Override
public void cry() {
System.out.println(this.name+"はにゃーとないた");
}
public void sleep(){
System.out.println("こたつですやすや");
}
}
class Dog extends Animal{
public Dog(String name) {
super(name);
}
@Override
public void cry() {
System.out.println(this.name+"はワンと吠えた");
}
}
class Pig extends Animal{
public Pig(String name) {
super(name);
}
@Override
public void cry() {
System.out.println(this.name+"はぶ~とないた");
}
}
3.アプリケーションクラスとしてAnimalAppを作成し、以下の処理を実現せよ。
ただし、3匹の動物をAnimal型の配列にいれて処理を記述すること。
[実行例]
タマはにゃーとないた
こたつですやすや
ジョンはワンと吠えた
さぶはぶ~とないた
public class AnimalApp {
public static void main(String[] args) {
Animal[] animals={new Cat("タマ"),new Dog("ジョン"),new Pig("さぶ")};
for(Animal a:animals){
a.cry();
if(a instanceof Cat){
((Cat)a).sleep();
}
}
}
}


コメント