這段函式可以通過編譯~~~~也可以執行
你一定會覺得很奇怪~~~因為p已經設為null了呀~~~應該會拋出NullPointerException
可是她竟然又能編譯又能執行~~~真酷~~~~因為xxx是static的
public class Main {
static void xxx(){
System.out.println("bbb");
}
public static void main(String[] args) {
Main p = new Main();
p = null;;
p.xxx();
}
}
如果改成
public class Main {
void xxx(){
System.out.println("bbb");
}
public static void main(String[] args) {
Main p = new Main();
p = null;;
p.xxx();
}
}
就會發生編譯成功~~~執行出現異常~~~NullPointerException
沒有留言:
發佈留言