类、抽象类与接口的区别

类与类之间只能单继承

类与接口之间可以多实现;

接口与接口之间可以多继承;

  声明 变量 方法 和接口的关系 和类的关系 是否能构造对象
使用class关键字声明,修饰符是 public 可以采用任何合法的方式进行声明 可以采用任何合法的方式进行声明 多实现 单继承 可以直接构造对象
抽象类 使用 abstract class关键字声明,修饰符是 public 可以采用任何合法的方式进行声明 如果抽象类中含有抽象方法,那么这个方法的声明必须是abstract.这个方法访问权限不能为private,不能使用final修饰方法,不能使用static进行修饰,抽象方法没有方法体。抽象类中可以没有抽象方法 多实现 单继承 不能直接构造对象,如果想要构造,必须由子类继承,然后再构造
接口 使用interface关键字声明,修饰符是 public 接口中的变量必须是public static final 的,这个限定条件是默认的。 接口中的方法声明必须为 public abstract ,这个限定条件是默认的。
接口中定义的方法全部是抽象方法。
多继承 多实现 不能直接构造对象,如果想要构造,必须由子类实现,然后再构造
原文地址:https://www.cnblogs.com/wdmwj626/p/4733481.html