接口和抽象类有什么区别?

接口和抽象类都是用于实现抽象类型的机制:

  1. 抽象类
  • 抽象类可以包含抽象方法(未实现的方法)和具体方法(已实现的方法)。
  • 抽象类可以有字段(成员变量),这些字段可以是具体的,也可以是抽象的。
  • 一个类只能继承一个抽象类,Java不支持多继承。
  • 抽象类可以拥有构造方法,用于初始化对象。
  • 抽象类的主要目的是提供一个基类,供其子类继承和扩展。
abstract class AbstractClass {
   
    int x; // 抽象类可以有字段

    abstract void abstractMethod(); /

你可能感兴趣的:(java)