Java - interface



Ps1:接口命名规则:IXxx...

Ps2:接口中的interface前面的public abstract,方法前面的public abstract,属性前面的public static final都可以省略的。可以通过继承该接口的类查看报错的原因反推推出系统默认的修饰符等(如图)。

报错提示要大于等于父类的修饰符,父类此时是没有写修饰符,那么如果是 default 修饰符的话,那么子类这里不写应该也是OK的,protected 同理失败,推论可得是 public 修饰符。

Ps3:static final 也同上可以反推出。

Ps4:如果接口中的变量和implements该接口的类的变量同名,则倘若用接口声明该类则调用的是接口中的变量;否则用派生类调用的是派生类的变量。

这没什么难理解的,记住之前的一点:因为静态成员无法被重写只是被隐藏,所以这里根本就没重写父类这一说法,而父类本身就不能调用子类特有的方法,自然而然肯定调的还是父类自己的静态成员。

发布了834 篇原创文章 · 获赞 1675 · 访问量 78万+

猜你喜欢

转载自blog.csdn.net/Dream_Weave/article/details/105017406