Java抽象類聯繫(第六週)

代碼:


public abstract class Animal {
        abstract void cry();
        abstract String getAnmialNname();
}

public class Dog extends Animal{
    public String name;
    public Dog(String name) {
        // TODO Auto-generated constructor stub
        this.name=name;
    }
    @Override
    void cry() {
        // TODO Auto-generated method stub
        System.out.println("狗叫是:汪汪汪");
    }

    @Override
    String getAnmialNname() {
        // TODO Auto-generated method stub
        System.out.println("狗狗的名字"+this.name);
        return "動物的種類是狗";
    }


}

public class Cat extends Animal{
    public String name;
    public Cat(String name) {
        // TODO Auto-generated constructor stub
        this.name=name;
    }
    @Override
    void cry() {
        // TODO Auto-generated method stub
        System.out.println("貓叫是:喵喵喵");
    }

    @Override
    String getAnmialNname() {
        // TODO Auto-generated method stub
        System.out.println("貓貓的名字"+this.name);
        return "動物的種類是貓";
    }

}

public class Simulator {
        public void playSound(Animal animal){
            System.out.println(animal.getAnmialNname());
            animal.cry();
        }
}

public class TEST {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Simulator simulator=new Simulator();
        Dog dog=new Dog("點點");
        simulator.playSound(dog);
        Cat cat=new Cat("白白");
        simulator.playSound(cat);
    }

}

演示結果:

這裏寫圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章