接口:
- 格式:
-
权限修饰符(pubic/缺省的) interface 接口名{ }
- 说明:
-
1.接口和类是并列存在的的关系
-
2.接口中没有构造器,不能被实例化
-
3.接口中只有常量和抽象方法(JDK1.8之前)
-
4.接口和接口之间是继承关系而且是多继承。接口1 extends 接口2,接口3....
-
5.类和接口的关系是实现关系而且是多实现:类 implements 接口1,接口2 ……
-
6.类实现接口后必须重写接口中的所有抽象方法。如果不想重写,该类可以变成抽象类
-
7.接口和类之间的多态性 :接口的类型指向实现类的对象
接口在jdk1.8之后(包括1.8)中的新特性
*
- 接口中可以有:常量,抽象方法,静态方法,默认方法
- 说明:
-
1.如何调用接口中的静态方法和默认方法?
-
2.调用静态方法:接口名.静态方法名
-
3.调用默认方法:实现类的对象.方法名
-
4.类优先原则:一个类继承的父类和实现的接口(默认方法)中有同名同参的方法,那么调用的是父类中的
-
5.接口冲突:一个类实现多个接口,多个接口(默认方法)中有同名同参的方法,这时就会发生接口冲突
-
6.解决接口冲突:实现类只需要去重写方法即可。再通过该类的对象调用此方法时调用的是重写的方法
-
7.实现类重写接口中的默认方法后调用接口中的默认方法:接口名.super.默认方法
- 注意;如果使用抽象类和接口都可以的情况下,使用接口