ITPub博客

首页 > 应用开发 > > public void eat(Food f){...}中的(Food f)是什么意思

public void eat(Food f){...}中的(Food f)是什么意思

作者:samenzhou 时间:2019-11-25 11:42:09 0 删除 编辑

public class Demo {

    public static void main(String[] args){

        // 借助多态,主人可以给很多动物喂食

        Master ma = new Master();

        ma.feed(new Animal(), new Food());

        ma.feed(new Cat(), new Fish());

        ma.feed(new Dog(), new Bone());

    }

}

// Animal类及其子类

class Animal{

    public void eat(Food f){

        System.out.println("我是一个小动物,正在吃" + f.getFood());

    }

}

class Cat extends Animal{

    public void eat(Food f){

        System.out.println("我是一只小猫咪,正在吃" + f.getFood());

    }

}

class Dog extends Animal{

    public void eat(Food f){

        System.out.println("我是一只狗狗,正在吃" + f.getFood());

    }

}

// Food及其子类

class Food{

    public String getFood(){

        return "事物";

    }

}

class Fish extends Food{

    public String getFood(){

        return "鱼";

    }

}

class Bone extends Food{

    public String getFood(){

        return "骨头";

    }

}

// Master类

class Master{

    public void feed(Animal an, Food f){

        an.eat(f);

    }

}

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/912/viewspace-3120670/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2019-08-19

  • 博文量
    104
  • 访问量
    1057