什么是接口?
- 接口从语法角度来说像是一种特殊的抽象类,两者都可以包含抽象方法且不能创建对象。
- 接口是一种标准,通常用来约束其子类(实现类)应具备的功能。
为什么需要接口?
- 可以降低程序间耦合,更自然的使用多态。
可以在设计环节中使用接口定义标准,使开发更加灵活。
接口如何定义?
- 使用interface 关键字定义接口:
语法:interface 接口名{ }
接口中的方法、属性有什么特点?
- 接口中的属性都是公开静态常量,隐式使用public static final 修饰。
- 接口中的方法都是公开抽象方法,隐式使用public abstract修饰。
接口与抽象类有什么区别?
抽象类 | 接口 | |
---|---|---|
关键字 | abstract class | interface |
属性 | 无要求 | 公开静态常量 |
方法 | 抽象方法 | 非抽象方法 |
构造方法 | 有 | 无 |
继承模式 | 单继承 | 接口之间多继承 |
接口之间如何多继承?
- 接口可以使用 extends 关键字 继承其他接口;多个接口使用“,”号分隔。
接口如何实现?
- 在class关键之后,使用 implements 关键字实现接口,多个接口使用“,”号分隔。
- implements 关键字的作用与 extends 类似,它也可以继承到接口中的属性与方法,只不过implements 关键字只能应用于接口。
对于MyClass而言,实现了IA与IB接口,那么IA、IB将成为MyClass类的父类型。 - 实现一个接口就要实现接口中所有的方法,否则子类(实现类)将“被迫”成为抽象类。
如何使用接口?
1、编写一个类实现接口
2、覆盖接口中的所有方法(因为接口中所有的方法都是抽象方法)
3、使用多态语法创建对象,调用方法:
接口最基本的使用方法,当以后需要实现一个别人提供的接口时,使用该步骤可以保证基本语法没有问题。