1. 接口的基本概念

1.1. 接口就是一种比抽象类还抽象的类,体现在所有方法都为抽象方法。

1.2. 定义类的关键字是class,而定义接口的关键字是interface。

 

2. 类和接口之间的关系 

关系

关系

类和类之间的关系

使用extends关键字表达继承关系

支持单继承

类和接口之间的关系

使用implements关键字表达实现关系

支持多实现

接口和接口之间的关系

使用extends关键字表达继承关系

支持多继承

 

 

3. 抽象类和接口的主要区别(笔试题)

3.1. 定义抽象类的关键字是abstract class,而定义接口的关键字是interface。 

3.2. 继承抽象类的关键字是extends,而实现接口的关键字是implements。

3.3. 继承抽象类支持单继承,而实现接口支持多实现。

3.4. 抽象类中可以有构造方法,而接口中不可以有构造方法。

3.5. 抽象类中可以有成员变量,而接口中只可以有常量。 

3.6. 抽象类中可以有成员方法,而接口中只可以有抽象方法。

3.7. 抽象类中增加方法时子类可以不用重写,而接口中增加方法时实现类需要重写(Java8以前的版本)。

3.8. 从Java8开始增加新特性,接口中允许出现非抽象方法和静态方法,但非

3.9. 抽象方法需要使用default关键字修饰。

3.10. 从Java9开始增加新特性,接口中允许出现私有方法。