第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
· · · · · · (
收起)