发表于2024-12-22
Java核心技術係列:Java虛擬機規範(Java SE 8版) [The Java Virtual Machine Specification Jave SE 8 Edition] pdf epub mobi txt 電子書 下載 2024
《Java核心技術係列:Java虛擬機規範(Java SE 8版)》由Oracle官方發布,Java虛擬機技術創建人撰寫,國內資深Java技術專傢翻譯。書中基於全新Java SE 8,完整且準確地闡述Java虛擬機規範,是深度瞭解Java虛擬機和Java語言實現細節的必讀之作。
《Java核心技術係列:Java虛擬機規範(Java SE 8版)》共分7章。第1章從宏觀的角度介紹瞭Java虛擬機與Java的關係及發展曆程;第2章概述Java虛擬機的整體架構,包括class文件格式、數據類型、原始類型、引用類型、運行時數據區、棧幀、浮點算法、異常等,這對理解本書後麵的內容有重要幫助;第3章詳述如何將Java語言編寫的程序轉換為Java虛擬機指令集,涉及常量、局部變量、控製結構、算術運算、參數接收、方法調用、數組、操作數棧、異常處理、同步與注解等;第4章深入分析用來錶示編譯後的類和接口的class文件格式;第5章定義Java虛擬機啓動以及類與接口的加載、鏈接和初始化過程;第6章闡釋並列舉Java虛擬機指令集;第7章提供一張以操作碼值為索引的Java虛擬機操作碼助記符錶。
《Java核心技術係列:Java虛擬機規範(Java SE 8版)》完整而準確地闡釋瞭Java虛擬機各方麵的細節,圍繞Java虛擬機整體架構、編譯器、class文件格式、加載、鏈接與初始化、指令集等核心主題對Java虛擬機進行全麵而深入的分析,深刻揭示Java虛擬機的工作原理。同時,書中不僅完整地講述瞭由Java SE 8所引入的新特性,例如對包含默認實現代碼的接口方法所做的調用,還講述瞭為支持類型注解及方法參數注解而對class文件格式所做的擴展,並闡明瞭class文件中各屬性的含義,以及字節碼驗證的規則。
《Java核心技術係列:Java虛擬機規範(Java SE 8版)》主要內容:
闡釋Java虛擬機與Java的關係和發展曆程。
概覽Java虛擬機整體架構,包括class文件格式、數據類型、原始類型、引用類型、運行時數據區、棧幀、浮點算法、異常等。
詳述如何將以Java語言編寫的程序轉換為Java虛擬機指令集,涉及常量、局部變量、控製結構、算術運算、參數接收、方法調用、數組、操作數棧、異常處理、同步與注解等。
深入分析用來錶示編譯後的類和接口的class文件格式,主要包括ClassFile文件結構、描述符、常量池、字段、方法、屬性、格式檢查、代碼約束與class文件校驗等。
定義Java虛擬機啓動以及類和接口的加載、鏈接和初始化過程。
闡釋並列舉Java虛擬機指令集。
蒂姆·林霍爾姆(Tim Lindholm),資深Java虛擬機高級架構師,Java編程語言的主要貢獻者之一,曾是Sun公司傑齣工程師,目前主要負責移動設備上的Java應用。在到Sun公司工作之前,他曾經在美國阿貢國傢實驗室和Quintus公司從事與虛擬機和運行時係統相關的工作。
弗蘭剋·耶林(Frank Yellin),曾是Sun公司高級工程師,Java項目元老級成員。最近十餘年中,他都從事著解釋型及編譯型語言的運行時係統方麵的工作。在到Sun公司工作之前,他在Lucid公司從事Common Lisp編譯器相關的工作。
吉拉德·布拉查(Gilad Bracha),Newspeak編程語言的創建者,曾是Sun公司傑齣工程師。在到Sun公司工作之前,他在Animorphic Smalltalk System公司從事Strongtalk語言相關的工作。
亞曆剋斯·巴剋利(Alex Buckley),Oracle公司Java編程語言和Java虛擬機規範負責人。
譯者序
前言
第1章 引言
1.1 簡史
1.2 Java虛擬機
1.3 各章節摘要
1.4 說明
1.5 反饋
第2章 Java虛擬機結構
2.1 class文件格式
2.2 數據類型
2.3 原始類型與值
2.3.1 整數類型與整型值
2.3.2 浮點類型、取值集閤及浮點值
2.3.3 returnAddress類型和值
2.3.4 boolean類型
2.4 引用類型與值
2.5 運行時數據區
2.5.1 pc寄存器
2.5.2 Java虛擬機棧
2.5.3 Java堆
2.5.4 方法區
2.5.5 運行時常量池
2.5.6 本地方法棧
2.6 棧幀
2.6.1 局部變量錶
2.6.2 操作數棧
2.6.3 動態鏈接
2.6.4 方法調用正常完成
2.6.5 方法調用異常完成
2.7 對象的錶示
2.8 浮點算法
2.8.1 Java虛擬機和IEEE,754中的浮點算法
2.8.2 浮點模式
2.8.3 數值集閤轉換
2.9 特殊方法
2.10 異常
2.11 字節碼指令集簡介
2.11.1 數據類型與Java虛擬機
2.11.2 加載和存儲指令
2.11.3 算術指令
2.11.4 類型轉換指令
2.11.5 對象的創建與操作
2.11.6 操作數棧管理指令
2.11.7 控製轉移指令
2.11.8 方法調用和返迴指令
2.11.9 拋齣異常
2.11.10 同步
2.12 類庫
2.13 公有設計、私有實現
第3章 Java虛擬機編譯器
3.1 示例的格式說明
3.2 常量、局部變量和控製結構的使用
3.3 算術運算
3.4 訪問運行時常量池
3.5 與控製結構有關的更多示例
3.6 接收參數
3.7 方法調用
3.8 使用類實例
3.9 數組
3.10 編譯switch語句
3.11 使用操作數棧
3.12 拋齣異常和處理異常
3.13 編譯finally語句塊
3.14 同步
3.15 注解
第4章 class文件格式
4.1 ClassFile結構
4.2 各種名稱的內部錶示形式
4.2.1 類和接口的二進製名稱
4.2.2 非限定名
4.3 描述符
4.3.1 語法符號
4.3.2 字段描述符
4.3.3 方法描述符
4.4 常量池
4.4.1 CONSTANT_Class_info結構
4.4.2 CONSTANT_Fieldref_info、CONSTANT_Methodref_info和CONSTANT_InterfaceMethodref_info結構
4.4.3 CONSTANT_String_info結構
4.4.4 CONSTANT_Integer_info和CONSTANT_Float_info結構
4.4.5 CONSTANT_Long_info和CONSTANT_Double_info結構
4.4.6 CONSTANT_NameAnd-Type_info結構
4.4.7 CONSTANT_Utf8_info結構
4.4.8 CONSTANT_MethodHandle_info結構
4.4.9 CONSTANT_MethodType_info結構
4.4.10 CONSTANT_Invoke-Dynamic_info結構
4.5 字段
4.6 方法
4.7 屬性
4.7.1 自定義和命名新的屬性
4.7.2 ConstantValue屬性
4.7.3 Code屬性
4.7.4 StackMapTable屬性
4.7.5 Exceptions屬性
4.7.6 InnerClasses屬性
4.7.7 EnclosingMethod屬性
4.7.8 Synthetic屬性
4.7.9 Signature屬性
4.7.10 SourceFile屬性
4.7.11 SourceDebugExtension屬性
4.7.12 LineNumberTable屬性
4.7.13 LocalVariableTable屬性
4.7.14 LocalVariableTypeTable屬性
4.7.15 Deprecated屬性
4.7.16 RuntimeVisibleAnnota-tions屬性
4.7.17 RuntimeInvisible-Annotations屬性
4.7.18 RuntimeVisibleParameterAnnotations屬性
4.7.19 RuntimeInvisiblePara-meterAnnotations屬性
4.7.20 RuntimeVisibleTypeAnnotations屬性
4.7.21 RuntimeInvisibleType-Annotations屬性
4.7.22 AnnotationDefault屬性
4.7.23 BootstrapMethods屬性
4.7.24 MethodParameters屬性
4.8 格式檢查
4.9 Java虛擬機代碼約束
4.9.1 靜態約束
4.9.2 結構化約束
4.10 class文件校驗
4.10.1 類型檢查驗證
4.10.2 類型推導驗證
4.11 Java虛擬機限製
第5章 加載、鏈接與初始化
5.1 運行時常量池
5.2 虛擬機啓動
5.3 創建和加載
5.3.1 使用引導類加載器來加載類型
5.3.2 使用用戶自定義類加載器來加載類型
5.3.3 創建數組類
5.3.4 加載限製
5.3.5 從class文件錶示得到類
5.4 鏈接
5.4.1 驗證
5.4.2 準備
5.4.3 解析
5.4.4 訪問控製
5.4.5 方法覆蓋
5.5 初始化
5.6 綁定本地方法實現
5.7 Java虛擬機退齣
第6章 Java虛擬機指令集
6.1 設定:“必須”的含義
6.2 保留操作碼
6.3 虛擬機錯誤
6.4 指令描述格式
6.5 指令集描述
第7章 操作碼助記符
附錄A Limited License Grant
趕在品類日買的專業類,還沒來得及看,紙質不錯。
評分西班牙語:me vino a un salsa de soja
評分過瞭年又得奮鬥瞭,給自己充充電,提升一下自己,挺不錯的書
評分可以,可以,價格實惠,比超市便宜實惠,比超市便宜可以,價格實惠,比超市便宜可以,價格實惠,比超市便宜可以,價格實惠,比超市便宜可以,價格實惠,比超市便宜
評分吾消費京東商城數年,深知各産品琳琅滿目。然,唯此寶物與眾皆不同,為齣淤泥之清蓮。使吾為之動容,心馳神往,以至茶飯不思,寢食難安,輾轉反側無法忘懷。於是乎緊衣縮食,湊齊銀兩,傾吾之所有而能買。東哥之熱心、快遞員之殷切,無不讓人感激涕零,可謂迅雷不及掩耳盜鈴兒響叮當仁不讓世界充滿愛。待打開包裹之時,頓時金光四射,屋內升起七彩祥雲,處處皆是祥和之氣。吾驚訝之餘甚是欣喜若狂,嗚呼哀哉!此寶乃是天上物,人間又得幾迴求!遂沐浴更衣,焚香禱告後與人共賞此寶。人皆贊嘆不已,故生此寶物款型及做工,超高性價比之慨,且贊吾獨具慧眼與時尚品位。産品介紹果然句句實言,毫無誇大欺瞞之嫌。實乃大傢之風範,忠義之商賈。
評分物流快,書的質量看著也不錯,等翻翻書再看看裏麵有沒有問題
評分經常網購,總有大量包裹要收,感覺寫評論花掉瞭我大量的時間和精力!所以在一段時間裏,我總是覺得好想不去評論或者隨便寫寫!但是,有點對不住那些辛苦工作的賣傢客服、倉管、老闆。於是我寫下瞭一小段話,給我覺得能拿到我五星好評的賣傢的寶貝評價裏麵,以示感謝和尊敬!首先,寶貝的性價比很高,每次都會先試試再評價的,雖然寶貝不一定是最好的,但是在同等價位裏麵絕對是最棒的。京東的配送絕對是一流的,送貨速度快,配送員服務態度好,每樣東西都是送貨上門。希望京東能夠再接再厲,做得更好更大,提供更多的好東西給大傢,為京東的商品和服務點贊!
評分都是好書,趁著這次優惠活動買一些存著,慢慢看
評分活動買瞭好多人,價格比平時低瞭好多,而且書都還不錯
Java核心技術係列:Java虛擬機規範(Java SE 8版) [The Java Virtual Machine Specification Jave SE 8 Edition] pdf epub mobi txt 電子書 下載