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("猫吃鱼"); }}
新闻热点
疑难解答