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