抽象类和接口都属于常用类结构设计, 在开发之中都会出现,不过按照优先选择来讲,接口一定要比抽象类更方便。(抽象类能够做一些共同接口子类的间接实现)

从概念上来讲两者进行一下简单的对比:


NO

区别点

            抽象类

            接 口

1

关键字

abstract class 类名称{ }

interface接口名称

2

结构组成

抽象方法、普通方法、全局常量、全局变量、属性、构造方法

抽象方法和全局常量

3

权限

可以使用各种权限

只能够使用public访问权限

4

子类使用

子类利用extends关键字来继承抽象类

子类利用implements关键字来实现接口

5

关系

一个抽象类可以实现若干个接口

一个接口不能继承抽象类,但是可以使用extends来继承多个父接口

6

子类限制

一个子类只能够继承一个抽象类

一个子类可以实现多个接口


除了单继承的局限之外,实际上使用抽象类和接口都是类似的,但是在实际的开发之中,抽象类的设计要比接口复杂。现在要求掌握的就是如何去定义接口以及更好的实现子类。

对于现在已经学习的概念发现结构体很多:类、对象、抽象类、接口,那么这几者的具体关系实际上可以通过如下的一张图来描述。

抽象类与接口的区别(面试题)

总之:

1.接口是java的核心,慢慢需要学习到接口更多的使用以及设计;

2、开发之中优先考虑接口,以避免单继承局限

相关文章:

  • 2022-12-23
  • 2021-11-08
  • 2021-07-06
  • 2021-12-05
  • 2021-12-05
  • 2018-06-20
猜你喜欢
  • 2021-09-30
  • 2021-09-25
  • 2021-08-05
  • 2022-12-23
  • 2021-09-30
  • 2021-12-08
相关资源
相似解决方案