public class Test {
private static void testMethod(){
System.out.println("testMethod");
}
public static void main(String[] args) {
((Test)null).testMethod();
}
}
输出:
testMethod
Test t = null;
t.testMethod();
输出:
testMethod
- 此处是类方法(static)的调用,不是对象方法的调用,类方法使用不依赖对象是否被创建
- null可以被强制类型转换成任意类型,可以通过它来执行静态方法
- 非静态的方法用“对象.方法”的方式,必须依赖对象被创建后才能使用,若将testMethod()方法前的static去掉,则会报空指针异常