注册 登录 进入教材巡展
#
  • #

出版时间:2018年03月

出版社:清华大学出版社

以下为《Java语言程序设计(第3版)》的配套数字资源,这些资源在您购买图书后将免费附送给您:
  • 清华大学出版社
  • 9787302485520
  • 356739
  • 2018年03月
内容简介
本书以Java SE 8为基础,全面讲解Java编程语言、Java面向对象技术和Java核心类库。全书共18章,主要内容包括Java语言基础(数据类型、运算符与表达式、程序流程控制)、类与对象基础、数组与字符串、Java面向对象特征(类的继承与多态、内部类与注解类型、接口与Lambda表达式)、常用核心类、泛型与集合框架、异常处理、输入输出、JavaFX图形界面及事件处理、常用控件、JDBC数据库编程、并发编程基础、网络编程等。  本书知识点全面,体系结构清晰,重点突出,文字准确,内容组织循序渐进,并有大量精选示例。每章配有精心设计的编程练习题,帮助读者理解掌握编程技术。本书提供教学课件、程序源代码以及部分教学视频与习题解答等资源。  本书可作为高等院校计算机专业或相关专业的“Java程序设计”或“面向对象程序设计”课程的教材,也可作为Java认证考试及编程爱好者的参考资料。
目录
第1章 Java语言概述... 1

1.1 Java起源与发展... 1

1.1.1 Java的起源... 1

1.1.2 Java的发展历程... 2

1.1.3 Java语言的优点... 3

1.2 Java平台与开发环境... 3

1.2.1 Java平台与应用领域... 3

1.2.2 JDK、JRE和JVM.. 4

1.2.3 Java字节码与平台独立... 4

1.2.4 JDK的下载与安装... 5

1.2.5 Java API文档... 6

1.3 Java程序基本结构... 6

1.3.1 Java程序开发步骤... 6

1.3.2 第一个程序分析... 8

1.4 程序文档风格和注释... 9

1.4.1 一致的缩进和空白... 9

1.4.2 块的风格... 9

1.4.3 Java程序注释... 10

1.5 Eclipse集成开发环境... 10

1.6 小结... 12

编程练习... 12

第2章 Java语言基础... 13

2.1 简单程序的开发... 13

2.1.1 从键盘读取数据... 14

2.1.2 变量与赋值... 15

2.1.3 Java标识符... 15

2.1.4 Java关键字... 16

2.2 数据类型... 16

2.2.1 数据类型概述... 16

2.2.2 字面值和常量... 17

2.2.3 整数类型... 17

2.2.4 浮点类型... 19

2.2.5 字符类型... 20

2.2.6 布尔类型... 21

2.2.7 字符串类型... 22

2.3 运算符... 23

2.3.1 算术运算符... 23

2.3.2 关系运算符... 25

2.3.3 逻辑运算符... 25

2.3.4 赋值运算符... 26

2.3.5 位运算符... 28

2.3.6 运算符的优先级和结合性... 30

2.4 数据类型转换... 31

2.4.1 自动类型转换... 31

2.4.2 强制类型转换... 32

2.4.3 表达式中类型自动提升... 33

2.5 小结... 34

编程练习... 34

第3章 选择与循环... 36

3.1 选择... 36

3.1.1 单分支if语句... 36

3.1.2 双分支if-else语句... 37

3.1.3 嵌套的if语句和多分支的if-else语句... 39

3.1.4 条件运算符... 40

3.1.5 switch语句结构... 41

3.2 循环... 43

3.2.1 while循环... 43

3.2.2 do-while循环... 45

3.2.3 for循环... 45

3.2.4 循环的嵌套... 47

3.2.5 break语句和continue语句... 47

3.3 示例学习... 49

3.3.1 任意抽取一张牌... 49

3.3.2 求最大公约数... 50

3.3.3 打印输出若干素数... 51

3.4 小结... 52

编程练习... 53

第4章 类和对象... 55

4.1 面向对象概述... 55

4.1.1 OOP的产生... 55

4.1.2 面向对象的基本概念... 56

4.1.3 面向对象基本特征... 57

4.1.4 OOP的优势... 58

4.2 为对象定义类... 58

4.2.1 类的定义... 59

4.2.2 对象的使用... 62

4.2.3 理解栈与堆... 64

4.2.4 用UML图表示类... 64

4.3 方法设计... 65

4.3.1 如何设计方法... 65

4.3.2 方法的调用... 67

4.3.3 方法重载... 67

4.3.4 构造方法... 68

4.3.5 this关键字的使用... 70

4.3.6 方法参数的传递... 71

4.4 静态变量和静态方法... 72

4.4.1 静态变量... 72

4.4.2 静态方法... 74

4.4.3 单例模式... 75

4.4.4 递归... 76

4.5 对象初始化和清除... 77

4.5.1 实例变量的初始化... 77

4.5.2 静态变量的初始化... 79

4.5.3 垃圾回收器... 80

4.5.4 变量作用域和生存期... 81

4.6 包与类的导入... 82

4.6.1 包... 82

4.6.2 类的导入... 84

4.6.3 Java编译单元... 85

4.7 小结... 85

编程练习... 86

第5章 数组... 90

5.1 创建和使用数组... 90

5.1.1 数组定义... 90

5.1.2 增强的for循环... 93

5.1.3 数组元素的复制... 93

5.1.4 数组参数与返回值... 95

5.1.5 可变参数的方法... 96

5.1.6 实例:随机抽取4张牌... 97

5.1.7 实例:一个整数栈类... 98

5.2 Arrays类... 99

5.2.1 数组的排序... 100

5.2.2 元素的查找... 100

5.2.3 数组元素的复制... 101

5.2.4 填充数组元素... 101

5.2.5 数组的比较... 102

5.3 二维数组... 103

5.3.1 二维数组定义... 103

5.3.2 数组元素的使用... 104

5.3.3 数组初始化器... 105

5.3.4 实例:矩阵乘法... 105

5.3.5 不规则二维数组... 106

5.4 小结... 108

编程练习... 108

第6章 字符串... 111

6.1 String类... 111

6.1.1 创建String类对象... 111

6.1.2 字符串基本操作... 112

6.1.3 字符串查找... 114

6.1.4 字符串转换为数组... 114

6.1.5 字符串比较... 115

6.1.6 字符串的拆分与组合... 117

6.1.7 String对象的不变性... 118

6.1.8 命令行参数... 118

6.2 格式化输出... 119

6.3 StringBuilder类和StringBuffer类... 122

6.3.1 创建StringBuilder对象... 122

6.3.2 StringBuilder的访问和修改... 122

6.3.3 运算符“ ”的重载... 124

6.4 小结... 124

编程练习... 124

第7章 继承与多态... 126

7.1 类的继承... 126

7.1.1 类继承的实现... 126

7.1.2 方法覆盖... 129

7.1.3 super关键字... 130

7.1.4 调用父类的构造方法... 132

7.2 封装性与访问修饰符... 133

7.2.1 类的访问权限... 133

7.2.2 类成员的访问权限... 134

7.3 防止类扩展和方法覆盖... 135

7.3.1 final修饰类... 135

7.3.2 final修饰方法... 136

7.3.3 final修饰变量... 136

7.4 抽象类... 137

7.5 对象转换与多态... 138

7.5.1 对象转换... 139

7.5.2 instanceof运算符... 140

7.5.3 多态与动态绑定... 140

7.6 小结... 142

编程练习... 142

第8章 Java常用核心类... 144

8.1 Object:终极父类... 144

8.1.1 toString()方法... 145

8.1.2 equals()方法... 145

8.1.3 hashCode()方法... 146

8.1.4 clone()方法... 147

8.1.5 finalize()方法... 148

8.2 Math类... 149

8.3 基本类型包装类... 151

8.3.1 Character类... 151

8.3.2 Boolean类... 152

8.3.3 创建数值类对象... 153

8.3.4 数值类的常量... 154

8.3.5 自动装箱与自动拆箱... 155

8.3.6 字符串转换为基本类型... 156

8.3.7 BigInteger和BigDecimal类... 156

8.4 日期-时间API 158

8.4.1 本地日期类LocalDate. 158

8.4.2 本地时间类LocalTime. 160

8.4.3 本地日期时间类LocalDateTime. 161

8.4.4 Instant类、Duration类和Period类... 162

8.4.5 其他常用类... 164

8.4.6 日期时间解析和格式化... 164

8.5 小结... 166

编程练习... 166

第9章 内部类、枚举和注解... 168

9.1 内部类... 168

9.1.1 成员内部类... 169

9.1.2 局部内部类... 170

9.1.3 匿名内部类... 171

9.1.4 静态内部类... 173

9.2 枚举类型... 175

9.2.1 枚举类型的定义... 175

9.2.2 枚举类型的方法... 175

9.2.3 枚举在switch中的应用... 176

9.2.4 枚举类型的构造方法... 177

9.3 注解类型... 178

9.3.1 注解概述... 179

9.3.2 标准注解... 179

9.3.3 定义注解类型... 181

9.3.4 标准元注解... 183

9.4 小结... 184

编程练习... 185

第10章 接口与Lambda表达式... 188

10.1 接口... 188

10.1.1 接口定义... 188

10.1.2 接口的实现... 189

10.1.3 接口的继承... 190

10.1.4 接口类型的使用... 192

10.1.5 常量... 192

10.2 静态方法和默认方法... 192

10.2.1 静态方法... 193

10.2.2 默认方法... 193

10.2.3 解决默认方法冲突... 193

10.3 接口示例... 195

10.3.1 Comparable接口... 195

10.3.2 Comparator接口... 197

10.4 Lambda表达式... 198

10.4.1 Lambda表达式简介... 198

10.4.2 函数式接口... 199

10.4.3 Lambda表达式的语法... 199

10.4.4 预定义的函数式接口... 200

10.4.5 方法引用与构造方法引用... 204

10.5 小结... 206

编程练习... 206