1、增加了default方法和static方法,这两种方法必须有方法体
2、default方法属于实例,static方法属于接口。
3、接口里面的静态方法不会被继承,静态变量会被继承下来
4、如果一个类实现了多个接口,并且这些接口之间没有继承关系,同时存在相同的默认方法会报错。如果多个接口有继承关系,默认方法会被子类接口覆盖。
5、如果遇到有多个继承,并且有相同的默认方法,实现类可以通过特殊语法指定要访问哪个接口的方法,具体写法为<接口>.super.<方法名>。
6、如果接口使用@FunctionalInterface注解,改接口必须有一个且只能有一个抽象方法,该方法可以使用Lambda表达式,函数式接口。