多态是采取多种形式的能力。方法重写是运行时多态。
我的问题是:
Java中是否有类似静态多态的东西?
可以将方法隐藏视为一种多态形式吗?
在这个问题的答案中,据说静态方法不是多态的。是什么原因呢?
如果我们运行此测试
class A { static void x() { System.out.println("A"); } } class B extends A { static void x() { System.out.println("B"); } } class Test { public static void main(String[] args) throws Exception { A a = new B(); a.x(); } }
如果方法x()是多态的,它将打印B。