(案例:猫和狗)Java 多态练习_ide

1.定义动物类

package 猫和狗;

public class Animal {

   public String name;

   public String age;

   public Animal() {

   }

   public Animal(String name, String age) {

       this.name = name;

       this.age = age;

   }

   public String getName() {

       return name;

   }

   public void setName(String name) {

       this.name = name;

   }

   public String getAge() {

       return age;

   }

   public void setAge(String age) {

       this.age = age;

   }

   public void eat(){

       System.out.println("动物吃东西");

   }

}


2.定义猫类

package 猫和狗;

public class Cat extends Animal{

   public Cat(){

   }

   public Cat(String name,String age){

       this.name=name;

       this.age=age;

   }

   @Override

   public void eat() {

       System.out.println("猫吃鱼");

   }

}


3.定义狗类

package 猫和狗;

public class Dog extends Animal{

   public Dog() {

   }

   public Dog(String name, String age) {

       super(name, age);

   }

   @Override

   public void eat() {

       System.out.println("狗吃骨头");

   }

}


4.测试类

package 猫和狗;

//测试类

public class AnimalDemo {

   public static void main(String[] args) {

       Animal a=new Cat();

       a.setName("小白");

       a.setAge("3");

       System.out.println(a.getName()+","+a.getAge());

       a.eat();

       System.out.println("----------------------------------------");

       a=new Cat("小白","3");

       System.out.println(a.getName()+","+a.getAge());

       a.eat();

       System.out.println("----------------------------------------");

       Animal a2=new Dog();

       a2.setName("大黄");

       a2.setAge("7");

       System.out.println(a2.getName()+","+a2.getAge());

       a2.eat();

       System.out.println("----------------------------------------");

       a=new Dog("大黄","7");

       System.out.println(a2.getName()+","+a2.getAge());

       a2.eat();

       System.out.println("----------------------------------------");

   }

}


(案例:猫和狗)Java 多态练习_测试类_02