抽象类名作为形参和返回值

package com.daxing_02;

public abstract class Animal {
public abstract void eat();
}
package com.daxing_02;

public class Operator {
public void uesAnimal(Animal a) {
a.eat();
}

public Animal getAnimal() {
Animal a = new Cat();
return a;
}
}

package com.daxing_02;

public class Cat extends Animal{
@Override
public void eat() {
System.out.println("猫吃鱼🐟");
}
}

package com.daxing_02;

public class Demo {
public static void main(String[] args) {
Operator ao = new Operator();
Animal a = new Cat();
ao.uesAnimal(a);

Animal a2 = ao.getAnimal();
a2.eat();
}
}

运行结果:

猫吃鱼🐟
猫吃鱼🐟

Process finished with exit code 0

posted @ 2021-11-25 15:08  小风扇呜呜呜  阅读(39)  评论(0)    收藏  举报