《Java虛擬機基礎教程》是2018年2月人民郵電出版社出版的圖書,作者是[荷]文森特·范德利昂(Vincent van der Leun)。
基本介紹
- 書名:Java虛擬機基礎教程
- 作者:[荷]文森特·范德利昂(Vincent van der Leun)
- ISBN:9787115477798
- 頁數:295頁
- 定價:69元
- 出版社:人民郵電出版社
- 出版時間:2018年2月
- 裝幀:平裝
- 開本:16開
內容簡介,圖書目錄,
內容簡介
本書概述Java 虛擬機(JVM)及其特性,並用大量示例詳細介紹了Java、Scala、Clojure、Kotlin 和Groovy 這5 種基於JVM 的語言。具體而言,首先概述了Java 平台,緊接著詳細闡述了JVM,然後分別介紹了上述各種語言的基礎知識和核心概念,並運用它們開發項目、創建應用程式。
本書適合所有Java開發人員以及對JVM感興趣的讀者。
圖書目錄
* 1 章 Java 虛擬機 1
1.1 JVM 實現 1
1.2 為何要在JVM 上開發 2
1.2.1 JVM 適應市場的變化 2
1.2.2 Java 類庫 3
1.2.3 生態系統 3
1.3 常見的用途 5
1.3.1 Web 應用程式 5
1.3.2 大數據 5
1.3.3 IoT 6
1.4 JVM 概念 6
1.4.1 虛擬機 6
1.4.2 JIT 編譯器 7
1.4.3 基本數據類型 7
1.4.4 類 8
1.4.5 引用類型 8
1.4.6 垃圾收集器 9
1.4.7 向後兼容 11
1.4.8 構建工具 11
1.5 Java 版本 12
1.5.1 Java SE 12
1.5.2 Java EE 13
1.5.3 Java ME 13
1.6 其他JVM 語言 14
1.6.1 為何選擇其他語言 14
1.6.2 在同一個項目中使用多種JVM語言 15
1.6.3 使用另一種語言編寫單元測試 17
1.7 小結 17
* 2 章 Java 虛擬機開發 18
2.1 JDK 18
2.1.1 安裝JDK 19
2.1.2 探索JDK 23
2.1.3 JRE 27
2.2 使用包組織類 28
2.2.1 包是什麼 28
2.2.2 選擇包名 29
2.2.3 包名舉例 30
2.2.4 全限定類名 30
2.3 Java 類庫 30
2.3.1 Java 類庫的組織結構 31
2.3.2 包概述 31
2.3.3 java.lang 包中的重要類 32
2.3.4 集合API——java.util.ArrayList 和java.util.HashMap 35
2.4 從命令行運行JVM 應用程式 40
2.4.1 * 少有一個類包含靜態方法main() 41
2.4.2 存儲類檔案的結構 41
2.4.3 為JVM 實例設定ClassPath 42
2.4.4 將類檔案放在JAR 歸檔檔案中 43
2.4.5 使用命令java 運行程式 44
2.4.6 在JVM 中運行的示例項目 46
2.5 Eclipse IDE 49
2.5.1 下載Eclipse IDE 50
2.5.2 安裝Eclipse IDE 51
2.6 小結 52
第3 章 Java 53
3.1 Java 中的面向對象編程功能 53
3.1.1 定義類 54
3.1.2 類訪問限定符 54
3.1.3 類限定符final——鎖定類 54
3.1.4 定義包 55
3.1.5 導入類 55
3.1.6 添加類成員——變數和方法 56
3.1.7 限定符 57
3.1.8 構造函式和終結方法 62
3.1.9 向上轉換和向下轉換 69
3.2 編寫Java 代碼 70
3.2.1 運算符 70
3.2.2 條件檢查 71
3.2.3 POJO 73
3.2.4 數組 74
3.2.5 泛型和集合 75
3.2.6 循環 77
3.2.7 異常 79
3.2.8 執行緒 81
3.2.9 lambda 83
3.3 編程風格指南 84
3.4 小測驗 85
3.5 小結 86
第4 章 Java 編程 87
4.1 配置Eclipse IDE 87
4.2 使用Java 創建Web 服務 88
4.2.1 在Eclipse IDE 中新建Gradle項目 89
4.2.2 修改Gradle 構建檔案 90
4.2.3 構建項目 91
4.2.4 編寫後端類 92
4.3 小結 103
第5 章 Scala 104
5.1 安裝Scala 104
5.2 Scala 的REPL shell 106
5.3 函式式編程和命令式編程 106
5.4 Scala 語法和規則 108
5.4.1 靜態類型語言 108
5.4.2 可修改的變數和不可修改的變數 108
5.4.3 常用的Scala 類型 109
5.5 Scala 的OOP 功能 110
5.5.1 定義包和子包 111
5.5.2 導入成員 112
5.5.3 定義類 112
5.5.4 實例變數和實例方法 113
5.5.5 構造函式 114
5.5.6 擴展類 115
5.5.7 重載方法 116
5.5.8 抽象類 116
5.5.9 特質 117
5.5.10 單例對象 118
5.5.11 運算符重載 118
5.5.12 Case 類 119
5.6 Scala 標準庫 120
5.6.1 泛型 120
5.6.2 集合 121
5.6.3 XML 處理 123
5.7 Scala 的函式式編程功能 124
5.7.1 使用函式遍歷集合 125
5.7.2 映射 過濾 歸約設計模式 125
5.7.3 柯里化 126
5.8 小測驗 127
5.9 小結 128
第6 章 Scala 編程 129
6.1 Scala IDE for Eclipse 外掛程式 129
6.1.1 安裝Scala IDE for Eclipse 129
6.1.2 切換到Scala IDE 透視圖 131
6.2 SBT 131
6.2.1 安裝SBT 132
6.2.2 創建基於SBT 的Eclipse IDE項目 132
6.2.3 Scala 編譯器(scalac) 135
6.3 創建Akka 項目 136
6.3.1 在SBT 構建檔案中添加Akka依賴項 137
6.3.2 更新Scala IDE 項目 138
6.3.3 Akka 概念 138
6.3.4 創建* 一個Akka Actor——QuotesHandlerActor 140
6.3.5 創建訊息 142
6.3.6 編寫基於ScalaTest 的單元測試 144
6.3.7 實現訊息處理程式 146
6.3.8 創建QuotePrinterActor 147
6.3.9 主應用程式 149
6.4 小結 151
第7 章 Clojure 152
7.1 安裝Clojure 152
7.2 Clojure 的互動式shell(REPL) 154
7.3 Clojure 語言 155
7.3.1 語法 155
7.3.2 表達式 156
7.3.3 定義變數 157
7.3.4 定義函式 157
7.3.5 數據結構 158
7.4 使用Java 類 167
7.5 使用代理管理狀態 169
7.6 風格指南 172
7.7 小測驗 173
7.8 小結 174
第8 章 Clojure 編程 175
8.1 Eclipse IDE 外掛程式Counterclockwise 175
8.1.1 安裝外掛程式Counterclockwise 176
8.1.2 切換到Java 透視圖 177
8.2 構建工具Leiningen 177
8.3 創建可執行的Clojure 程式 179
8.3.1 在不使用Leiningen 的情況下將代碼編譯成類檔案 179
8.3.2 使用Leiningen 編譯項目 180
8.4 新建Counterclockwise 項目 181
8.4.1 Eclipse IDE 中的Clojure REPL 183
8.4.2 更新項目的Clojure 版本 183
8.4.3 添加依賴 184
8.5 以測試驅動開發的方式探索monad 185
8.6 Web 框架Luminus 189
8.6.1 創建Luminus 項目 190
8.6.2 將項目導入Counterclockwise 191
8.6.3 探索Luminus 項目 191
8.6.4 在Web 應用程式中添加頁面 192
8.7 小結 194
第9 章 Kotlin 196
9.1 安裝Kotlin 196
9.2 Kotlin 的REPL 互動式shell 198
9.3 Kotlin 語言基礎 200
9.3.1 定義局部變數 200
9.3.2 定義函式 201
9.3.3 Kotlin 類型 202
9.3.4 循環 207
9.4 Kotlin 的OOP 功能 208
9.4.1 定義包 208
9.4.2 導入成員 208
9.4.3 定義類和構造函式 209
9.4.4 給類添加成員 210
9.4.5 繼承 212
9.4.6 接口 213
9.4.7 可見性限定符 214
9.4.8 單例對象和伴生對象 214
9.4.9 數據類 216
9.4.10 lambda 和內聯函式 217
9.5 Kotlin 過程性編程 218
9.6 風格指南 219
9.7 小測驗 220
9.8 小結 220
* 10 章 Kotlin 編程 222
10.1 Eclipse IDE Kotlin 外掛程式 222
10.1.1 安裝Eclipse IDE Kotlin外掛程式 222
10.1.2 切換到Kotlin 透視圖 223
10.2 Apache Maven 224
10.2.1 安裝Apache Maven 224
10.2.2 下載預製的Kotlin 基本套件 225
10.2.3 在Eclipse IDE 中導入項目 226
10.2.4 探索構建檔案pom.xml 227
10.2.5 在Eclipse 中更新構建檔案 228
10.3 創建JavaFX 桌面GUI 應用程式 229
10.3.1 定製項目 230
10.3.2 創建可運行的應用程式 230
10.3.3 編寫擴展函式 233
10.3.4 布局窗格 235
10.3.5 實現基於BorderPane 的布局 236
10.3.6 實現動畫 238
10.3.7 調試程式 241
10.4 小結 243
* 11 章 Groovy 244
11.1 安裝Groovy 244
11.2 Groovy 語言 247
11.3 Groovy 開發包(GDK) 255
11.3.1 Groovy 字元串(GString) 256
11.3.2 集合 257
11.4 動態和靜態編程 260
11.4.1 元編程 261
11.4.2 Groovy 靜態編程 262
11.5 小測驗 264
11.6 小結 265
* 12 章 Groovy 編程 266
12.1 安裝Groovy Eclipse 外掛程式 266
12.2 Apache Ivy 和IvyDE 268
12.3 創建並配置項目 269
12.3.1 新建Groovy Eclipse 項目 269
12.3.2 創建供Ivy 使用的ivy.xml檔案 270
12.4 Java Database Connectivity(JDBC) 272
12.4.1 H2 資料庫 274
12.4.2 創建記憶體資料庫 274
12.5 使用MarkupBuilder 生成XML 278
12.6 微服務平台Vert.x 281
12.6.1 在檔案ivy.xml 中添加Vert.x 依賴 282
12.6.2 創建Web 服務 283
12.7 小結 286
附錄A 其他JVM 語言 287
附錄B 小測驗答案 296