JDK1.8 Interface接口中可以使用default定义扩展方法方法,在学习比较接口与抽象类的区别时,一个是抽象类可以包含有实例方法,也可以包含有抽象方法,interface中不包含实例方法,只包含被public static final修饰的常量和抽象方法,在jdk1.8中改变了这个看法,直接上码:
![JDK1.8 Interface接口中可以使用default和static定义扩展方法 JDK1.8 Interface接口中可以使用default和static定义扩展方法](/default/index/img?u=aHR0cHM6Ly9waWFuc2hlbi5jb20vaW1hZ2VzLzQxNy80NDMwZWVlMDFmZDdlMDIwMTc4ZGRhM2U3YzY4NGY1MS5wbmc=)
可以看出,static方法修饰则必须使用接口名来进行调用。
如果一个类同时实现了两个或以上带有default方法和static修饰方法的接口,则static方法不影响,default方法必须在实现类中重写,否则编译失败。