接口提供了一种编程规范,如果定义一个类去实现某个接口,会让你强制实现接口里的方法。方法个数,方法名,返回值以及参数表都是固定的。也就是说方法的原型已经确定了,只是实现方式由程序员来写。接口一般是架构师来写,在整个项目中提供统一的规范,意思就是:你必须按照我写的格式来编程。
接口更多的是去定义某种需求或者某种规范至于谁去满足这种需求和实现这种规范,调用者不需要关心。这就是针对接口编程。而接口的实现可以随着底层的不同随时进行更换,不会对上层(也就接口方法的调用者)产生任何的影响。