1接口
java为什么要接口,因为java中没有多继承,所以需要接口来多继承
用接口来实现多继承并不会增加类关系的复杂度。因为接口不是类,与类不在一个层次上,是在类的基础上进行再次抽象
1.1接口特点
- 接口中所有方法都是抽象
- 接口中不存在属性,只有常量
- 接口中方法和常量都是pulbic,static,final(可省略)
- 接口中没有构造方法,不能实例化,但允许定义接口类型的引用变量,该引用变量引用实现了这个接口的类的实例
- 接口不能实现(implements)另一个接口,可以继承多个其它接口
1.2接口的定义
定义接口用关键字interfac
例:
interface Animal{ //使用interface关键字定义接口
//只能有常量,不能有变量
public static final String type = "小的";
public static final Dog d = new Dog();
public abstract void method(); //只有抽象方法
}
实现接口用impleaments
例:
class Cat implements Animal{ //使用implements关键字定义接口
//一定要实现接口中的方法
public void method() {
}
}
class Dog implements Animal{
//一定要实现接口中的方法
public void method() {
System.out.println("狗");
}
}
1.3接口的编程原则
- 尽量针对接口编程(能用接口就用接口)
- 接口隔离原则(用若干个小接口取代一个大接口)