2011-01-10 8 views
13

重複の可能性:Javaでnull参照の例外がNullPointerExceptionが呼ばれた理由をアイドル好奇心の
What is a Null Pointer Exception?
Java: Why aren't NullPointerExceptions called NullReferenceExceptions ?JavaにNullReferenceExceptionの代わりにNullPointerExceptionがあるのはなぜですか?

私たちは、誰もが知っているのですか?

正式にポインタがない新しい言語では、null参照を使用するときにこの名前を使用する選択肢が作られるのは間違っているようです。

誰かが私に権威ある説明を教えることができれば、それは認められるでしょう。

+0

あなたは、昨年のJsightのリンクの質問にコメントしました。 =) – Riggy

+0

@Riggy:うん、私の悪い。私は間違った検索(java NullPointerException)の代わりに(java NullReferenException)を行った。私は質問を削除して、不合理な代理人を放棄します。 – Uri

答えて

5

Javaに「公式にポインタがない」という記述は、単にfalseです。算術演算を行うことができないという理由だけで、それがポインタではありません。 Cはプログラミング用語の最終的な権限ではありません。

ベアメタルとのパワー不足のためにJavaを蔑視したいC/C++ファン、またはJavaをより簡単に販売したいマーケティング担当者(おそらく、今日はない) 、C開発に悪い経験をした管理者に代わるより安全な方法です。 Java language specificationから

基準値(しばしば単に 参照は)ない物体を指すこれら オブジェクトへのポインタ、及び特殊ヌル参照、 あります。

+2

一般的によく理解されている概念の名前の不一致は、コンピュータサイエンス全体の基本的な問題です。さらに悪いのは、単一言語仕様の名前の不一致です。同じことを指す言葉が2つあるという点は何ですか?なぜ彼らはポインタだと教えてくれるのですか?それがC/C++ポインタと同じくらい効率的だと言うと?その場合、この名前の不一致を認識しているはずです。 – oleks

関連する問題