Java编程入门官方教程(第7版)

副标题:无

作   者:Herbert

分类号:

ISBN:9787302499329

微信扫一扫,移动浏览光盘

简介


针对Java SE 9做了全面细致的更新,将引导你轻松学习新的核心Java编程技能,指导你立即着手编写Java程序。《Java编程入门官方教程(第7版)》开篇讲述Java语言基础知识(如创建、编译和运行Java程序的方式),此后浓墨重彩地描述构成Java语言核心的关键字、语法和结构。*后介绍Java的一些高级特性,如多线程程序设计、泛型、lambda表达式、Swing、JavaFX、新“模块”功能以及Java*的交互式编程工具Jshell。

目录


第1章 Java基础 1

1.1Java的起源 1

1.2Java对Internet的贡献 2

1.2.1 Java简化了基于Web的编程 3

1.2.2 Java applet 3

1.2.3 安全性 3

1.2.4 可移植性 3

1.3Java的魔法:字节码 3

1.4超越applet 4

1.5Java的主要术语 4

1.6面向对象程序设计 5

1.6.1 封装 5

1.6.2 多态性 6

1.6.3 继承 6

1.7获得Java开发工具包 6

1.8*个简单的程序 7

1.8.1 输入程序 7

1.8.2 编译程序 8

1.8.3 逐行分析*个程序 8

1.9处理语法错误 9

1.10第二个简单程序 10

1.11另一种数据类型 11

1.12两条控制语句 13

1.12.1 if语句 13

1.12.2 for循环语句 14

1.13创建代码块 15

1.14分号和定位 16

1.15缩进原则 16

1.16Java关键字 18

1.17Java标识符 18

1.18Java类库 19

1.19自测题 19

第2章 数据类型与运算符 21

2.1数据类型为什么重要 21

2.2Java的基本类型 21

2.2.1 整数类型 22

2.2.2 浮点型 23

2.2.3 字符型 23

2.2.4 布尔类型 24

2.3字面值 26

2.3.1 十六进制、八进制和二进制
字面值 26

2.3.2 字符转义序列 26

2.3.3 字符串字面值 27

2.4变量详解 28

2.4.1 初始化变量 28

2.4.2 动态初始化 28

2.5变量的作用域和生命期 28

2.6运算符 30

2.7算术运算符 30

2.8关系运算符和逻辑运算符 32

2.9短路逻辑运算符 33

2.10赋值运算符 34

2.11速记赋值 34

2.12赋值中的类型转换 35

2.13不兼容类型的强制转换 36

2.14运算符的优先级 37

2.15表达式 38

2.15.1 表达式中的类型转换 38

2.15.2 间距和圆括号 40

2.16自测题 40

第3章 程序控制语句 41

3.1从键盘输入字符 41

3.2if语句 42

3.2.1 嵌套if语句 43

3.2.2 if-else-if阶梯状结构 44

3.3switch语句 44

3.4for循环 48

3.4.1 for循环的一些变体 50

3.4.2 缺失部分要素的for循环 50

3.4.3 无限循环 51

3.4.4 没有循环体的循环 51

3.4.5 在for循环内部声明循环控制
变量 52

3.4.6 增强型for循环 52

3.5while循环 52

3.6do-while循环 54

3.7使用break语句退出循环 57

3.8将break语句作为一种goto语句使用 58

3.9使用continue语句 61

3.10嵌套循环 65

3.11自测题 65

第4章 类、对象和方法 67

4.1 类的基础知识 67

4.1.1 类的基本形式 67

4.1.2 定义类 68

4.2 如何创建对象 70

4.3 引用变量和赋值 70

4.4 方法 71

4.5 从方法返回值 73

4.6 返回值 73

4.7 使用形参 75

4.8 构造函数 81

4.9 带形参的构造函数 82

4.10 深入介绍new运算符 83

4.11 垃圾回收 83

4.12 this关键字 84

4.13自测题 85

第5章 其他数据类型与运算符 87

5.1 数组 87

5.2 多维数组 91

5.3 不规则数组 91

5.3.1 三维或更多维的数组 92

5.3.2 初始化多维数组 93

5.4 另一种声明数组的语法 93

5.5 数组引用赋值 94

5.6 使用length成员 95

5.7 for-each形式的循环 99

5.7.1 迭代多维数组 101

5.7.2 应用增强型for循环 102

5.8 字符串 102

5.8.1 构造字符串 102

5.8.2 操作字符串 103

5.8.3 字符串数组 104

5.8.4 字符串是不可变的 105

5.8.5 使用String控制switch语句 106

5.9 使用命令行实参 106

5.10 位运算符 107

5.10.1 位运算符的与、或、异或和非 108

5.10.2 移位运算符 111

5.10.3 位运算符的赋值速记符 112

5.11 ?运算符 114

5.12自测题 115

第6章 方法和类详解 117

6.1 控制对类成员的访问 117

6.2 向方法传递对象 121

6.3 返回对象 124

6.4 方法重载 125

6.5 重载构造函数 129

6.6 递归 132

6.7 理解static关键字 134

6.8 嵌套类和内部类 138

6.9 varargs 140

6.9.1 varargs基础 141

6.9.2 重载varargs方法 143

6.9.3 varargs和歧义 144

6.10自测题 145

第7章 继承 147

7.1 继承的基础知识 147

7.2 成员访问与继承 149

7.3 构造函数和继承 151

7.4 使用super调用超类构造函数 152

7.5 使用super访问超类成员 155

7.6 创建多级层次结构 158

7.7 何时调用构造函数 160

7.8 超类引用和子类对象 161

7.9 方法重写 164

7.10 重写的方法支持多态性 166

7.11 为何使用重写方法 167

7.12 使用抽象类 170

7.13 使用final 173

7.13.1 使用final防止重写 173

7.13.2 使用final防止继承 174

7.13.3 对数据成员使用final 174

7.14 Object类 175

7.15自测题 175

第8章 包和接口 177

8.1 包 177

8.1.1 定义包 177

8.1.2 寻找包和CLASSPATH 178

8.1.3 一个简短的包示例 178

8.2 包和成员访问 179

8.3 理解被保护的成员 181

8.4 导入包 182

8.5 Java的类库位于包中 183

8.6 接口 184

8.7 实现接口 185

8.8 使用接口引用 187

8.9 接口中的变量 192

8.10 接口能够扩展 193

8.11 默认接口方法 193

8.11.1 默认方法的基础知识 194

8.11.2 默认方法的实际应用 195

8.11.3 多继承问题 196

8.12 在接口中使用静态方法 196

8.13 私有接口方法 197

8.14 有关包和接口的*后思考 198

8.15自测题 198

第9章 异常处理 199

9.1 异常的层次结构 199

9.2 异常处理基础 200

9.2.1 使用关键字try和catch 200

9.2.2 一个简单的异常示例 200

9.3 未捕获异常的结果 202

9.4 使用多个catch语句 203

9.5 捕获子类异常 204

9.6 try代码块可以嵌套 205

9.7 抛出异常 206

9.8 Throwable详解 207

9.9 使用finally 208

9.10 使用throws语句 210

9.11 新增的3种异常功能 211

9.12 Java的内置异常 212

9.13 创建异常子类 213

9.14自测题 217

第10章 使用I/O 219

10.1 Java的I/O基于流 219

10.2 字节流和字符流 219

10.3 字节流类 220

10.4 字符流类 220

10.5 预定义流 221

10.6 使用字节流 221

10.6.1 读取控制台输入 222

10.6.2 写入控制台输出 223

10.7 使用字节流读写文件 223

10.7.1 从文件输入 223

10.7.2 写入文件 226

10.8 自动关闭文件 227

10.9 读写二进制数据 229

10.10 随机访问文件 232

10.11 使用Java字符流 234

10.11.1 使用字符流的控制台输入 235

10.11.2 使用字符流的控制台输出 237

10.12 使用字符流的文件I/O 237

10.12.1 使用FileWriter 238

10.12.2 使用FileReader 238

10.13 使用Java的类型封装器转换数值
字符串 239

10.14自测题 246

第11章 多线程程序设计 247

11.1 多线程的基础知识 247

11.2 Thread类和Runnable接口 248

11.3 创建一个线程 248

11.4 创建多个线程 255

11.5 确定线程何时结束 257

11.6 线程的优先级 259

11.7 同步 262

11.8 使用同步方法 262

11.9 同步语句 264

11.10 使用notify( )、wait( )和notifyAll( )
的线程通信 266

11.11 线程的挂起、继续执行和停止 270

11.12自测题 274

第12章 枚举、自动装箱、静态导入和
注解 275

12.1 枚举 275

12.2 Java语言中的枚举是类类型 277

12.3 values( )和valueOf( )方法 277

12.4 构造函数、方法、实例变量和
枚举 278

12.5 枚举继承enum 279

12.6 自动装箱 284

12.7 类型封装器 284

12.8 自动装箱的基础知识 286

12.9 自动装箱和方法 286

12.10 发生在表达式中的自动装箱/自动
拆箱 287

12.11 静态导入 289

12.12 注解(元数据) 290

12.13自测题 292

第13章 泛型 295

13.1 泛型的基础知识 295

13.2 一个简单的泛型示例 296

13.2.1 泛型只能用于引用类型 298

13.2.2 泛型类型是否相同基于其类型
实参 298

13.2.3 带有两个类型形参的泛型类 299

13.2.4 泛型类的一般形式 300

13.3 约束类型 300

13.4 使用通配符实参 302

13.5 约束通配符 304

13.6 泛型方法 306

13.7 泛型构造函数 308

13.8 泛型接口 308

13.9 原类型和遗留代码 313

13.10 使用菱形运算符进行类型推断 315

13.11 擦除特性 315

13.12 歧义错误 316

13.13 一些泛型限制 316

13.13.1 类型形参不能实例化 316

13.13.2 对静态成员的限制 317

13.13.3 泛型数组限制 317

13.13.4 泛型异常限制 318

13.14 继续学习泛型 318

13.15自测题 318

第14章 lambda表达式和方法引用 319

14.1 lambda表达式简介 319

14.1.1 lambda表达式的基础知识 320

14.1.2 函数式接口 320

14.1.3 几个lambda表达式示例 322

14.2 块lambda表达式 325

14.3 泛型函数式接口 326

14.4 lambda表达式和变量捕获 330

14.5 从 lambda表达式中抛出异常 331

14.6 方法引用 332

14.6.1 静态方法的方法引用 332

14.6.2 实例方法的方法引用 334

14.7 构造函数引用 336

14.8 预定义的函数式接口 338

14.9自测题 339

第15章 模块 341

15.1 模块基础 341

15.1.1 简单的模块示例 342

15.1.2 编译、运行*个模块示例 345

15.1.3 requires和exports 346

15.2 java.base和平台模块 346

15.3 旧代码和未命名的模块 347

15.4 导出到特定的模块 347

15.5 使用requirestransitive 348

15.6 使用服务 351

15.6.1 服务和服务提供程序的基础
知识351

15.6.2 基于服务的关键字 351

15.6.3 基于模块的服务示例 352

15.7 其他模块功能 356

15.7.1 open模块 357

15.7.2 opens语句 357

15.7.3 requires static 357

15.8 继续模块的学习 357

15.9自测题 358

第16章 Swing介绍 359

16.1 Swing的起源和设计原则 359

16.2 组件和容器 360

16.2.1 组件 361

16.2.2 容器 361

16.2.3 *容器窗格 361

16.3 布局管理器 362

16.4 *个简单的Swing程序 362

16.5 Swing事件处理 365

16.5.1 事件 365

16.5.2 事件源 365

16.5.3 事件监听器 366

16.5.4 事件类和监听器接口 366

16.6 使用JButton 366

16.7 使用JTextField 369

16.8 使用JCheckBox 371

16.9 使用JList 374

16.10 使用匿名内部类或lambda表达式
来处理事件 380

16.11自测题 381

第17章 JavaFX简介 383

17.1 JavaFX的基本概念 383

17.1.1 JavaFX包 384

17.1.2 Stage和Scene类 384

17.1.3 节点和场景图 384

17.1.4 布局 384

17.1.5 Application类和生命周期方法 384

17.1.6 启动JavaFX应用程序 385

17.2 JavaFX应用程序的骨架 385

17.3 编译和运行JavaFX程序 387

17.4 应用程序线程 387

17.5 使用简单的JavaFX控件Label 387

17.6 使用按钮和事件 389


17.6.1 事件基础 389

17.6.2 按钮控件简介 390

17.6.3 演示事件处理和按钮 390

17.7 其他3个JavaFX控件 392

17.7.1 CheckBox 392

17.7.2 ListView 396

17.7.3 TextField 399

17.8 效果和变换简介 401

17.8.1 效果 401

17.8.2 变换 403

17.8.3 演示效果和变换 403

17.9 进一步学习 406

17.10自测题 406

附录A自测题答案 409

附录B使用Java的文档注释 439

附录CJava Web Start概述 445

附录DJShell简介 451

附录E 更多Java关键字

已确认勘误

次印刷

页码 勘误内容 提交人 修订印次

Java编程入门官方教程(第7版)
    • 名称
    • 类型
    • 大小

    光盘服务联系方式: 020-38250260    客服QQ:4006604884

    意见反馈

    14:15

    关闭

    云图客服:

    尊敬的用户,您好!您有任何提议或者建议都可以在此提出来,我们会谦虚地接受任何意见。

    或者您是想咨询:

    用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问

    Video Player
    ×
    Audio Player
    ×
    pdf Player
    ×
    Current View

    看过该图书的还喜欢

    some pictures

    解忧杂货店

    东野圭吾 (作者), 李盈春 (译者)

    loading icon