接口与抽象类

kuangshenmentu / 2023-07-26 / 原文

抽象类

  1. 由abstract修饰的类 称为抽象类

  2. 抽象类可以包含抽象方法,也可以包含普通方法

  3. 抽象类需要被继承,抽象方法需要被重写

  4. 含有抽象方法的类一定是抽象类,抽象类可以没有抽象方法

  5. 抽象类中变量为普通变量

  6. 抽象类不能实例化

  7. 抽象类有构造函数

 

接口

  1. 接口由interface修饰的

  2. 接口包含抽象方法,默认由public abstract 修饰(可不写)

  3. 接口需要被实现,重写抽象方法

  4. 接口中的变量为公共的静态常量

  5. 接口没有构造函数

 

抽象类 与 接口 相同点

  1. 都可以包含抽象方法

  2. 都需要被继承或者实现

抽象类 与 接口 不同点

  1. 抽象类由abstract修饰,而接口由interface修饰

  2. 抽象类需要被继承(只能单继承),接口需要被实现(多实现)

  3. 抽象类定义的变量是普通变量,接口定义的变量是公共的静态常量

  4. 抽象类有构造函数,而接口没有构造函数

  5. 接口是对动作的抽象,抽象类是对根源的抽象

 

https://blog.csdn.net/m0_51358164/article/details/125153230