可能重复:
使用空对象引用调用静态方法时会发生什么?
我很好奇如何 - 以及为什么 - 这种行为是实施的:
如果我持有一个指向具有静态函数的类的空指针,{nullPointer}.doSomething() 仍然可以工作!例如,运行下面的例子不会导致空指针异常!
这怎么可能?
Class A {
int a;
static void doSomething() {...}
}
Class B {
void test() {
A a = null;
//This will not throw an exception!
a.doSomething();
}
}