目前到Java8截至,关于接口的一些笔记:(Java8新增😀😀default/static方法😀😀)
1.接口里不能包含普通方法,接口里的所以方法都是抽象方法。Java8对接口进行了改进,允许在接口中定义默认方法,默认方法可以提供方法实现(默认方法 -default。同一包中可见)。
2.和类定义不同,接口不再使用class关键字,而是interface关键字定义。
1)修饰符可以是public或者省略,如果省略,默认采用包权限访问修饰符(default)。
2)一个接口可以有多个直接父类接口,但接口只能继承接口,不能继承类。
注:只有在java8以上版本才允许定义默认方法,类方法。
3.由于接口定义的是一种规范,因此接口里不能包含构造器和初始化块。接口里可以包含成员变量(只能是类变量,因为没有对象),方法(抽象方法,默认方法,类方法)和内部类(内部接口,枚举)。
4.接口里所有成员,包括常量,方法,内部类都是public修饰。
5.对于接口定义的静态常量变量而言,他们的修饰词都是public static final。而且由于是不可变量,再加上没有构造器和初始化块,因此静态常量必须在定义时指定默认值。(为什么要用fina修饰——体现了一种模板思想)接口里 int a = 5;实际上是public static final int a = 5;
6.接口里定义的方法只能是类方法,抽象方法和默认方法。
7.接口里的 内部类、内部接口、内部枚举默认采用 public static修饰。
全部评论
(1) 回帖