封装与多态例子

/**
 * 1、
1) 创建一动物类:Animal
2) 创建三个子类:Dog、Cat、Pig都继承于Animal
3) 为Dog添加Love(),打印我喜欢吃骨头
4) 为Cat添加Love(),打印我喜欢吃小鱼
5) 为Pig添加Love(),打印我喜欢吃饲料
6) 请创建一个长度为3的动物数组Animal[] animals = new Animal[3];
7) 分别创建一个狗、猫、猪对象,并将三个对象加入至动物数组内
8) 请采用循环调用动物数组内的每一个动物的Love()方法
 */
package com.duotai;


public class Test {
public static void main(String[] args) {
     Animal[] animal=new Animal[3];
     Manager manager=new Manager();


     /*Dog dog=new Dog();
     manager.show(dog);//dog做实参,传递给animal的对象
     Cat cat=new Cat();
     manager.show(cat);
     Pig pig=new Pig();
     manager.show(pig);*/
     
    Dog dog =new Dog();
    animal[0]=dog;
    Cat cat=new Cat();
    animal[1]=cat;
    Pig pig =new Pig();
    animal[2]=pig;
    for (int i = 0; i < animal.length; i++) {
manager.show(animal[i]);
}
}

}


package com.duotai;


public class Manager {
    public void show(Animal animal){  //对象做形参
    animal.Love();// 对象调用方法
    /*Dog dog=new Dog();
        dog.Love();
        Cat cat=new Cat();
        cat.Love();
        Pig pig=new Pig();
        pig.Love();
        animal=dog;
        animal.Love();*/
    
    }

   
}


package com.duotai;


public class Animal {

public  void Love(){
System.out.println("我喜欢吃东西");
}
}



package com.duotai;


public class Cat extends Animal {
public void Love() {
System.out.println("我喜欢吃小鱼");
}
}



package com.duotai;


public class Dog extends Animal {
public void Love() {
       System.out.println("我喜欢吃骨头");
}
}



package com.duotai;


public class Pig extends Animal {
public void Love() {
System.out.println("我喜欢吃饲料");
}
}

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值