手记

抽象类特点 学习笔记

B:抽象类特点

  • a:抽象类和抽象方法必须用abstract关键字修饰

    • abstract class 类名 {}

    • public abstract void eat();

  • b:抽象类不一定有抽象方法,有抽象方法的类一定是抽象类或者是接口

  • c:抽象类不能实例化那么,抽象类如何实例化呢?

    • 按照多态的方式,由具体的子类实例化。其实这也是多态的一种,抽象类多态。

  • d:抽象类的子类

    • 要么是抽象类

    • 要么重写抽象类中的所有抽象方法

class Demo1_Abstract {    public static void main(String[] args) {        //Animal a = new Animal();          //错误: Animal是抽象的; 无法实例化        Animal a = new Cat();               //父类引用指向子类对象        a.eat();    }}/** B:抽象类特点    * a:抽象类和抽象方法必须用abstract关键字修饰        * abstract class 类名 {}        * public abstract void eat();    * b:抽象类不一定有抽象方法,有抽象方法的类一定是抽象类或者是接口    * c:抽象类不能实例化那么,抽象类如何实例化呢?        * 按照多态的方式,由具体的子类实例化。其实这也是多态的一种,抽象类多态。    * d:抽象类的子类        * 要么是抽象类        * 要么重写抽象类中的所有抽象方法*/abstract class Animal {                     //抽象类    public abstract void eat();             //抽象方法    public Animal() {        System.out.println("父类空参构造");    }}class Cat extends Animal {    public Cat() {        super();    }    public void eat() {        System.out.println("猫吃鱼");    }}

0人推荐
随时随地看视频
慕课网APP