接口的结构定义

JDK-1.7及以前:

只能定义全局常量和抽象方法**
>全局常量:public static final (建议省略不写)**
>抽象方法:public abstract**

JDK-1.8:

还可以定义静态方法,默认方法
>接口中静态方法只能通过接口调用
>接口中默认方法可以通过实现类对象调用

父类和接口优先级

同名变量:必须进行显式区分
>super.变量名
>Interface.全局常量名
同名同参数方法(接口中为默认方法):
>(类优先原则)子类没有重写的情况下,优先调用父类的方法

接口和接口同名的默认方法

有方法体:
>实现类没有重写的情况下,报错(接口冲突).
解决办法:实现类必须重写此方法
没有方法体:
>实现类中重写方法即可

在子类(或实现类)中调用父类或接口中被重写的方法

调用父类的:super.methodName
调用接口的:Interface.super.methodName

posted @ 2020-07-27 16:20  juyss  阅读(427)  评论(0)    收藏  举报