《Java虚拟机基础教程》PDF下载

  • 购买积分:11 如何计算积分?
  • 作  者:(荷)Vincent van der Leun著
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2018
  • ISBN:9787115477798
  • 页数:298 页
图书介绍:本书深入介绍了Java虚拟机(JVM)及其特性,并用大量示例详细介绍了Java、Scala、Clojure、Kotlin和Groovy这5种基于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