package com.happy;
public class HappyNewYear {
public static void main(String[] args){
//Animal a = new Animal(); //错误:Animal是抽象的;无法实例化
Animal a = new Cat(); //父类引用,指向子类对象
a.eat();
}
}
/*
* 抽象类的特点
* a:抽象类和抽象方法必须用abstract关键字修饰
* * abstract class 类名 {}
* * public abstract void eat();
* b:抽象类不一定有抽象方法,有抽象方法的类一定是抽象类或者接口
* c:抽象类不能实例化,那么抽象类如何实例化呢?、
* *按照多态的方式,由具体的子类实例化。其实这也是多态的一种,抽象类多态。
* d:抽象类的子类
* *要么是抽象类
* *要么重写抽象类中的所有抽象方法
*
*/
abstract class Animal{
public abstract void eat();
}
class Cat extends Animal{
public void eat(){
System.out.println("猫吃鱼");
}
}
Java 基础 抽象类
最新推荐文章于 2023-10-10 18:37:33 发布