接口中得static属性

我们都知道子类继承父类的时候能继承父类的static属性修饰的方法,但是无法重写父类的static属性修饰的方法。

 

 

public class Father {
public static void sout(){
System.out.println("是爸爸");
}
}

public class Son extends Father {
@Override
public static void sout() {
System.out.println("是儿子");
}
}

 

 

 

那么接口中呢?

先说结论:类无法继承接口中的静态方法。

首先我们都知道Java中类和类之间是支持单继承,不支持多继承的。类和接口之间是支持类实现多个接口。那么如果一个类同时实现多个接口,且接口之中都有相同静态方法。

如果接口中的该静态方法能被实现类继承了,由于static方法是无法被重写的,我们调用子类的该静态方法到底是调用它所实现的哪个接口的该静态方法呢? 这样就不对了,从

这个角度显然类无法继承接口中的静态方法。

参考链接:

https://blog.csdn.net/yang_leiting/article/details/126996191

 

posted @ 2022-11-08 09:43  世纪sj  阅读(82)  评论(0)    收藏  举报