everything is refactoring

          beyond the limitation of the life

          常用鏈接

          統計

          最新評論

          我的評論

          re: 深入Java 虛擬機 之讀書筆記 refactoring 重構 2005-12-13 00:21  
          類裝載器
          1。運行時包:同一個類裝載器裝載的、屬于同一個包的、多個類型的集合。要訪問protect/friend訪問時一定是同一個運行時包才行
          java API的類文件是最可信的,可以通過禁止引入某個包中的類,
          2。Class 要通過四次檢查來:第一次載入時,第二、三次連接中,動態連接過程中解析符號引用時
          第一次:文件完整性與文件的格式、版本號
          第二次:每個部分屬性與它定義的是否相符?如返回類型與參數一致性,還有final是否被子類化,常量池的引用是否指向合法的reference
          第三次:是校驗字節碼,即操作碼,操作對象是否合法獲值與棧中數值是正確的值與類型。停機問題:不能用一個程序來判斷輸入的值是否會產生停機
          第四次:確定某個類的引用或方法的存在和合法性,它是動態連編的一部分
          如果避免同時引入了舊包和新包,但調用者根本不知道?
          查一下java編譯是根據時間還是所有的重新編譯?

          Java系統安全(類裝載器體系結構、class文件檢查器以及java中內置的安全特性如限制對本地方法的調用)
          1. 類型安全的引用轉換
          2. 結構化的內存訪問
          3. 數據邊界檢查
          4. 空引用

          引用散列方法:大量的輸入得到很小的輸入,即它們是一對一的,輸出和jar文件放在一起,如果jar文件有改變就會發現輸出不對。

          私鑰與公鑰的問題:
          1. 有公鑰的情況下得到私鑰是很難的
          2. 私鑰加密的都可以用公鑰解開
          用私鑰加密后的散列輸入與包含散列輸出的jar傳到A手中,A得到后用公鑰解開,再用這個輸入計算一下,與jar中的輸出應該是一樣的

          Keytool 產生公鑰與私鑰
          Jarsigner 簽名
          keytool -genkey -alias friend -keypass friend4life -validity 10000 -keystore ijvmkeys

          將生成ivjmkeys的keystore文件,有效期為10000天


          keytool -genkey -alias stranger -keypass friend4life -validity 10000 -keystore ijvmkeys

          jarsigner –keystore ijvmkeys –storepass ijvm2ed –keypass friend4life friend.jar friend
          jarsigner –keystore ijvmkeys –storepass ijvm2ed –keypass friend4life friend.jar stranger


          Java虛擬機體系結構
          子系統、內存區、數據類型、指令
          主站蜘蛛池模板: 万山特区| 嘉峪关市| 鲁甸县| 长丰县| 西城区| 玉树县| 来宾市| 博野县| 竹山县| 松潘县| 兰州市| 雅江县| 江门市| 东阿县| 沛县| 杭锦后旗| 阿城市| 南投县| 噶尔县| 峡江县| 昌图县| 米脂县| 湛江市| 桦川县| 仁怀市| 沭阳县| 雷山县| 阿拉善右旗| 黎城县| 获嘉县| 类乌齐县| 茂名市| 台中县| 玛曲县| 安新县| 抚松县| 宜宾县| 南宁市| 西畴县| 马关县| 兰西县|