天天看点

Java 关键字abstract详解

  abstract 关键字可以修饰类或方法。

abstract 类可以扩展(增加子类),但不能直接实例化。

abstract 方法不在声明它的类中实现,但必须在某个子类中重写。

示例

  public abstract class MyClass
  {
  }
        
  public abstract String myMethod();
        

注释

  • 采用 abstract 方法的类本来就是抽象类,并且必须声明为 abstract。
  • abstract 类不能实例化。
  • 仅当 abstract 类的子类实现其超类的所有 abstract 方法时,才能实例化 abstract 类的子类。这种类称为具体类,以区别于 abstract 类。
  • 如果 abstract 类的子类没有实现其超类的所有 abstract 方法,该子类也是 abstract 类。
  • abstract 关键字不能应用于 static、private 或 final 方法,因为这些方法不能被重写,因此,不能在子类中实现。
  • final 类的方法都不能是 abstract,因为 final 类不能有子类。