2-07_抽象类

 1 package duoTai06;
 2 
 3 public class Animal {
 4     private String name;
 5     private int age;
 6 
 7     public Animal() {
 8     }
 9 
10     public Animal(String name, int age) {
11         this.name = name;
12         this.age = age;
13     }
14 
15     public String getName() {
16         return name;
17     }
18 
19     public void setName(String name) {
20         this.name = name;
21     }
22 
23     public int getAge() {
24         return age;
25     }
26 
27     public void setAge(int age) {
28         this.age = age;
29     }
30 
31     public void eat(){
32         System.out.println("动物吃东西");
33     }
34 }
 1 package duoTai06;
 2 
 3 public class Cat extends Animal {
 4     public Cat() {
 5     }
 6 
 7     public Cat(String name, int age) {
 8         super(name, age);
 9     }
10 
11     @Override
12     public void eat() {
13         System.out.println("猫吃鱼");
14     }
15 }
 1 package duoTai06;
 2 
 3 public class Dog extends Animal{
 4     public Dog() {
 5     }
 6 
 7     public Dog(String name, int age) {
 8         super(name, age);
 9     }
10 
11     @Override
12     public void eat() {
13         System.out.println("狗吃骨头");
14     }
15 }
 1 package duoTai06;
 2 /*
 3     需求:请采用多态的思想实现猫和狗的案例,并在测试类中进行测试
 4     思路:
 5         1.定义动物类(Animal)
 6             成员变量:姓名,年龄
 7             构造方法:无参,带参
 8             成员方法:get/set方法,吃饭()
 9         2.定义猫类,继承动物类
10             构造方法:无参,带参
11             成员方法:重写吃饭
12        3.定义狗类,继承动物类
13             构造方法:无参,带参
14             成员方法:重写吃饭
15        4.定义测试类,写代码测试
16  */
17 public class AnimalDemo {
18     public static void main(String[] args) {
19         //创建猫类对象进行测试
20         Animal a = new Cat();
21         a.setName("加菲猫");
22         a.setAge(4);
23         System.out.println(a.getName()+","+a.getAge());
24         a.eat();
25 
26         a = new Cat("加菲猫二号",5);
27         System.out.println(a.getName()+","+a.getAge());
28         a.eat();
29 
30         //创建狗类对象进行测试
31         Animal d = new Dog();
32         d.setName("凯特");
33         d.setAge(3);
34         System.out.println(d.getName()+","+d.getAge());
35         d.eat();
36 
37         d = new Dog("凯特二号",8);
38         System.out.println(d.getName()+","+d.getAge());
39         d.eat();
40     }
41 }

 

posted @ 2021-02-22 19:53  找不到北的北  阅读(58)  评论(0)    收藏  举报