2011-01-10 127 views
13

可能顯示的文件:閒置的好奇心
What is a Null Pointer Exception?
Java: Why aren't NullPointerExceptions called NullReferenceExceptions ?爲什麼Java有NullPointerException而不是NullReferenceException?

我們,沒有人知道爲什麼Java中的空引用異常被稱爲NullPointerException異常?

在正式沒有指針的新語言中,當使用空引用時可以選擇使用這個名稱,這似乎是違反直覺的。

如果任何人都可以指出我的權威解釋,那將不勝感激。

+0

有趣的是,你去年在Jsight的鏈接中提到了這個問題。 =) – Riggy 2011-01-10 15:50:50

+0

@Riggy:呃,我的壞。我做了錯誤的搜索(java NullPointerException)而不是(java NullReferenException)。我刪除了放棄任何不義代表的問題。 – Uri 2011-01-10 16:03:40

回答

5

Java「正式沒有指針」的說法簡直是錯誤的。僅僅因爲你不能算算它並不意味着它不是一個指針。 C不是編程術語的最終權威。

唯一讓自己掛掉的人是想要貶低Java在裸機上缺乏權力的C/C++粉絲,或者想要以更簡單的方式銷售Java的(現在不太可能的)營銷人員。 ,對於那些對C開發有不良經驗的經理來說更安全。

Java language specification

參考值(通常僅 引用)是指針這些 對象,和一個特殊的空引用, 這是指沒有對象。

相關問題