多态最主要的使用,不是在具体的类中使用,而是在抽象的类中使用
abstract class Animal{
public Animal(){}
//抽象类是有构造方法的;
public abstract void eat();
//public abstract void sleep(){} 不能有方法体,连{}也不能有;
}
//子类是抽象类
abstract class Dog extends Animal{}
//子类是具体类,重写抽象方法
class Cat extends Animal{
public void eat(){
System.out.println("猫吃鱼");
}
}
public class Abstract {
public static void main(String[] args){
//创建对象
//Animal是抽象的;无法实例化
//Animal a=new Animal();
//通过多态的方式
Animal a=new Cat();
a.eat();
//抽象类也是可以实例化的,但是是通过具体的子类的方式,是多态的方式,也叫向下转型;
}
}
程序运行结果为:
猫吃鱼
来源:CSDN
作者:绝代风华.
链接:https://blog.csdn.net/qq_44818449/article/details/102647003