严格意义上的静态方法不能被覆盖,但它们可以隐藏父静态方法 实际上,这意味着编译器将在编译时决定执行哪个方法,而不是在运行时,就像它对重写的实例方法所做的那样。 有关简洁的示例,请查看 此处。 这 是 Java 文档,解释了 覆盖 实例方法和 隐藏 类(静态)方法之间的区别。 重写: Java 中的重写只是意味着将根据对象的运行时类型而不是编译时类型调用特定方法(重写静态方法就是这种情况) 隐藏: 静态的父类方法不是子类的一部分(尽管它们是可访问的),因此不存在覆盖它的问题。即使您在子类中添加另一个静态方法,与其父类中的静态方法相同,该子类静态方法也是唯一的,并且不同于其父类中的静态方法。 原文由 opensas 发布,翻译遵循 CC BY-SA 4.0 许可协议
严格意义上的静态方法不能被覆盖,但它们可以隐藏父静态方法
实际上,这意味着编译器将在编译时决定执行哪个方法,而不是在运行时,就像它对重写的实例方法所做的那样。
有关简洁的示例,请查看 此处。
这 是 Java 文档,解释了 覆盖 实例方法和 隐藏 类(静态)方法之间的区别。