抽象类的特点:
A:抽象类和抽象方法必须用abstract关键字修饰。
B:抽象类中不一定有抽象方法,但是抽象方法的类必须定义为抽象类
c: 抽象类不能被实例化,因为它不是具体的。
抽象类有构造方法,但不能被实例化?构造方法的作用是什么?
用于子类访问父类数据的初始化。
D:抽象的子类。
如果不想重写抽象类的方法,该子类是个抽象类。重写所有的抽象方法,这个时候子类是一个具体的类
抽象类Demo:
//abstract class Animal //抽象类的声明格式 abstract class Animal { //抽象方法 //public abstract void eat(){} //空方法体,这个会报错。抽象方法不能有主体 public abstract void eat(); public Animal(){} } //子类是抽象类 abstract class Dog extends Animal {} //子类是具体类,重写抽象方法 class Cat extends Animal { public void eat() { System.out.println("猫吃鱼"); } } class AbstractDemo { public static void main(String[] args) { //创建对象 //Animal是抽象的; 无法实例化 //Animal a = new Animal(); //通过多态的方式 Animal a = new Cat(); a.eat(); } }
时间: 2025-01-08 01:47:32