-3

私はEffective Javaから次の行を理解しようとしています

Java を使うのが楽しい理由の 1 つは、Java が安全な言語であることです。これは、ネイティブ メソッドがない場合、C や C++ などの安全でない言語を悩ませるバッファー オーバーラン、配列オーバーラン、ワイルド ポインター、およびその他のメモリ破損エラーの影響を受けないことを意味します。安全な言語では、クラスを記述し、システムの他の部分で何が起こっても、それらの不変条件が真のままであることを確実に知ることができます。

バッファ オーバーラン、配列オーバーランとは何ですか (ここでは詳細は省略します。簡単な概要のみを示します)。また、Java のどの機能によってプログラムがオーバーランの影響を受けなくなりますか?

4

1 に答える 1

1

ArrayIndexOutOfBoundsException配列の境界外の値を検索しようとすると、Java は をスローします。セグメンテーション違反、予測不可能な (そしてセキュリティの観点から問題となる可能性がある) 動作を引き起こしたり、単にオペレーティング システムをクラッシュさせたりするのではありません。

(はい、それは C、C++ などが行うことです。)

于 2012-07-12T14:12:42.037 に答える