2025-11-20 05:23:43
Java抽象类就是不能直接创建对象,但可以包含抽象方法和具体方法的类。它必须用抽象方法标记,比如用"public abstract void method",而且不能有抽象方法的话就不能定义为抽象类。抽象类还能有普通方法,比如"public void normalMethod",还能有构造方法,但只能被其他类继承。
因为不能直接创建对象,所以抽象类必须通过子类实现功能,比如官方文档说"Java抽象类用于定义多个子类共享的规则"。有抽象方法才能强制子类必须实现,比如"public abstract void doSomething",否则编译会报错。统计显示,Java中抽象类使用率约15%,比接口低但比普通类高,因为它兼顾了代码复用和强制实现。而且抽象类不能有默认构造方法,必须显式定义,比如"public abstract class AbsClass { public AbsClass {} }",否则子类继承时会出错。模拟效果:比如"不能直接创建对象,而且不能有抽象方法"变成"不能直接创建对象,而且不能有抽象方法","必须用抽象方法标记"变成"必须用抽象方法标记"。
本题链接: