2012-07-12 55 views
-3

我試圖從有效的Java捉摸以下行緩衝區溢出和數組超支 - 簡單的解釋

一兩件事,使Java這樣的使用樂趣是,它是一種安全的語言。這意味着在沒有本地方法的情況下,它對緩衝區溢出,數組 溢出,野指針以及其他困擾不安全的語言(如C和C++)的內存損壞錯誤不起作用。用安全的語言編寫類和 可以確定地知道它們的不變量將保持爲真,無論系統的任何其他部分發生了什麼 。

什麼是緩衝區溢出,數組溢出(我不想在這裏有很多細節,只是簡單的概述而已),以及Java的哪些功能可以使程序免疫overuns?

+0

http://en.wikipedia.org/wiki/Buffer_overrun。 – 2012-07-12 14:06:49

回答

1

當您嘗試查找超出數組範圍的值時,Java會拋出ArrayIndexOutOfBoundsException,而不是導致段錯誤,不可預知(可能會出於安全角度出現問題)行爲,或者僅會導致操作系統崩潰。

(是的,這就是C,C++等所做的。)