一、接口的基础语法
1. 接口是一种“引用的数据类型”。
2.接口是完全抽象的(抽象类是半抽象的)。
3.接口的定义:[修饰符列表] interface 接口名{}
4.接口支持多继承(例如):
interface A{
}
interface B{
}
interface C extends A,B{
}
5.接口中只有常量和抽象方法(抽象方法的 public abstract 和 常量的public static final可以省略)。
6.接口中方法不能有方法体。
7.接口中的所有元素都是public修饰的。
8.接口的实现用关键字implements来完成(类的继承用extends)。
9.当一个非抽象类实现接口的话,必须将接口中的所有抽象方法全部实现,且一个类可以实现多个接口。
二、接口在开发中的作用
接口在开发中的作用,类似于多态在开发中的作用。
多态:面向抽象编程,不要面向具体编程。能够降低程序的耦合度,提高程序的扩展力。
代码如下(示例):
public class Master{
public void feed(Dog d){}
public void feed(Cat c){}
//如果要养其他宠物,那么这时候需要再加一个方法就需要修改代码
//这样扩展力就差,违背了OCP原则。
}
public class Master{
public void feed(Animal a){
}
//面向Animal父类编程,父类比子类更加抽象。
//所以我们叫做面向抽象编程,不要面向具体编程。
//这样就能加强程序的扩展力。
}