一、什么是接口
接口是抽象类的延伸,可以将它看作是纯粹的抽象类,接口中的所有方法都没有方法体。关键字:interface
语法:
public interface MyInterface {
public void foo();
//其他方法
}
其中,所有方法都是:public abstract
二、接口特性
1)接口不可以被实例化2)实现类必须实现接口的所有方法
3)实现类可以实现多个接口
4)接口中的变量都是静态常量
三、使用接口
1、使用接口步骤
编写接口->实现接口->使用接口实现接口关键字implements
实现多个接口使用“,”分隔
一个类可以实现多个接口,非抽象类实现接口时必须实现接口中的全部方法
抽象类利于代码复用,接口利于代码维护
2、面向接口编程
程序设计时:关心实现类有何能力,而不关心实现细节
面向接口的约定而不考虑接口的具体实现
3、接口是一种能力
接口有比抽象类更好的特性:1)可以被多继承
2)设计和实现完全分离
3)更自然的使用多态
4)更容易搭建程序框架
5)更容易更换实现
4、接口是一种约定
体现在接口名称和注释上1)有些接口只有名称
2)方法的实现方式要通过注释来约定