JDK-1.7及以前:
只能定义全局常量和抽象方法**
>全局常量:`public static final` (建议省略不写)**
>抽象方法:`public abstract`**
JDK-1.8:
还可以定义静态方法,默认方法
>接口中静态方法只能通过接口调用
>接口中默认方法可以通过实现类对象调用
父类和接口优先级
同名变量:必须进行显式区分
>`super.变量名`
>`Interface.全局常量名`
同名同参数方法(接口中为默认方法):
>(类优先原则)子类没有重写的情况下,优先调用父类的方法
接口和接口同名的默认方法
有方法体:
>实现类没有重写的情况下,报错(接口冲突).
解决办法:实现类必须重写此方法
没有方法体:
>实现类中重写方法即可
在子类(或实现类)中调用父类或接口中被重写的方法
调用父类的:`super.methodName`
调用接口的:`Interface.super.methodName`