1. 程式人生 > >Java 的 安全性 體現在哪裡?面試題

Java 的 安全性 體現在哪裡?面試題

回答一:(路邊社)

Java最基本的安全性有三個。
第一個就是garbage collection,garbage
collector會讓你的程式不容易出現記憶體洩露。記憶體洩露是很危險的,在記憶體洩露的時候黑客可以黑你的電腦。
第二個就是exception,你有沒有發現你想用唄null賦值的東西會出Exception?這個就是exception的好處。出現exception的時候程式設計師可以讓程式停止執行,這樣的話就不會被黑客黑了。
第3個就是指標,JAVA裡面沒有指標!這樣的話人們就不能access不該access的記憶體了。C的話就非常危險了,黑客可以讓C的程式stack
overflow, 然後在overflow的記憶體地址跳到一個不該跳的地方。 這些就是Java裡面的最基本的安全性。

回答二:(比較靠譜)

很多,就語言本身來講,體現在嚴格遵循面向物件的規範、無指標運算、陣列邊界檢查、強制型別轉換檢查等。就廣義的Java概念來講,Java的安全模型被分為三個主要的防範區域:
Byte-code驗證器、類裝載器和安全管理器。

官方回答:

Java SE 安全性概述 Java SE
平臺基於一個動態、可擴充套件、基於標準、可互操作的安全架構。加密、身份驗證和授權、公共金鑰基礎架構等安全特性是內建的。Java
安全模型基於一個可定製的“沙盒”,Java 軟體程式可在其中安全執行,對系統或使用者無潛在風險。
Java 編譯器和虛擬機器強制實施的內建的語言安全特性:
強大的資料型別管理
自動記憶體管理
位元組碼驗證
安全的類載入
這裡寫圖片描述