我的问题基本上与this相同,但这是否也适用于静态函数?编译器是否将final类中的所有静态函数都视为final本身?将final关键字添加到final类的静态函数中是否有效果?
答案 0 :(得分:2)
在final类中,所有方法也都是隐式final,因为将class设置为final意味着无法继承它,因此在子类中不能隐藏或覆盖其方法。
因此,实际上,您可以正确地认为final类中的静态方法是final方法,但这不是因为它是静态方法。这是因为课程是最后的。
答案 1 :(得分:1)
所有静态函数都是最终函数,因此最终类中的静态函数也是如此。
编辑:正如您所指出的,声明一个静态方法final将防止子类通过声明一个同名方法来隐藏它。如果一个类是最终的,则此属性无关紧要,但是因为不存在子类来隐藏静态方法。从这个意义上讲,是的,所有静态方法都是隐式最终的。