一、接口
一种公共(多个类)的规范标准。是一种引用数据类型。
二、接口中可以包含的内容:
Java7:常量、抽象方法;
Java8:常量、抽象方法、默认方法、静态方法;
Java9:常量、抽象方法、默认方法、静态方法、私有方法;
常量: 接口的成员变量,但必须用public static final修饰(可省略),从效果上看即接口的常量。public static final 数据类型 常量名 = 数据值 ;(必须赋值且值不能改变)
抽象方法:前面必须是public abstract(可省略) 返回值类型 方法名(参数列表)
默认方法:public default 返回值类型 方法名(参数列表){方法体}
如下图,接口中的默认方法,可以解决接口升级问题。
接口2.png
静态方法:public static 返回值类型 方法名(参数列表){方法体}
注意事项:不能通过接口实现类的对象来调用接口中静态方法。(应通过接口名直接调用其静态方法。)
接口3.png
私有方法:
1、普通私有方法,解决多个默认方法之间重复代码问题
private 返回值类型 方法名(参数列表){方法体}
2、静态私有方法,解决多个静态方法之间重复代码问题
private static 返回值类型 方法名(参数列表){方法体}
接口4.png
三、使用注意
1.接口不能随意使用,必须有一个实现类(Imp)来实现接口。
2.接口的实现类必须覆盖重写(实现)接口中所有抽象方法。
3.如果实现类并没有覆盖重写接口中所有抽象方法,那么这个实现类自己必须是抽象类。
4.接口不能有静态代码块和构造方法。
5.一个类可以同时实现多个接口。
6.如果实现类实现的多个接口中有重名方法,则覆盖重写一次就行。
7.如果实现类实现的多个接口中有重名的默认方法方法,实现类一定要对冲突的默认方法覆盖重写。
8.如果父类中的方法和接口中的方法冲突,则优先父类中的方法。
四、类与接口的关系
1.类与类之间是单继承的;2.类与接口之间是多实现的;接口与接口之间是多继承的。
接口5.png
网友评论