计算机科学丛书:Java程序设计与问题求解 原书第8版
作者: [美]Kenrick Mock
出版时间:2019年版
内容简介
本书不仅介绍Java语言的基础语法知识,还通过大量案例研究、编程示例,着重讲授问题求解和编程技术,如程序控制流(分支和循环)、定义类与方法、异常处理等。
目录
出版者的话
译者序
前言
致谢
依赖关系图
第1章 计算机与Java引论 1
1.1 计算机基础 1
1.1.1 硬件与内存 2
1.1.2 程序 3
1.1.3 编程语言、编译器和解释器 4
1.1.4 Java字节码 5
1.1.5 类加载器 7
1.2 浅尝Java 8
1.2.1 Java语言的历史 8
1.2.2 应用程序与小应用程序 9
1.2.3 第一个Java应用程序 9
1.2.4 编写、编译和运行Java程序 13
1.3 编程基础 14
1.3.1 面向对象编程 14
1.3.2 算法 17
1.3.3 测试与调试 18
1.3.4 软件复用 19
1.4 图形化编程补充读物 20
1.4.1 一个JavaFX应用程序样例 21
1.4.2 图形的尺寸和位置 23
1.4.3 绘制椭圆和圆 24
1.4.4 绘制弧 25
本章小结 27
练习 28
实践程序 29
编程项目 29
自测问题答案 30
第2章 基本的计算 33
2.1 变量和表达式 33
2.1.1 变量 33
2.1.2 数据类型 35
2.1.3 Java标识符 37
2.1.4 赋值语句 38
2.1.5 简单输入 40
2.1.6 简单屏幕输出 41
2.1.7 常量 42
2.1.8 具名常量 43
2.1.9 赋值兼容性 44
2.1.10 类型强制转换 45
2.1.11 算术运算 48
2.1.12 括号和优先级规则 50
2.1.13 特殊赋值操作符 51
2.1.14 案例研究:售货机找零 52
2.1.15 递增和递减操作符 56
2.1.16 更多有关递增和递减操作符的讨论 57
2.2 String类 57
2.2.1 字符串常量和变量 58
2.2.2 字符串连接 58
2.2.3 字符串方法 59
2.2.4 字符串处理 62
2.2.5 转义字符 63
2.2.6 Unicode字符集 64
2.3 键盘和屏幕I/O 65
2.3.1 屏幕输出 65
2.3.2 键盘输入 67
2.3.3 其他输入界定符(选修) 72
2.3.4 使用printf的格式化输出(选修) 73
2.4 文档和样式 75
2.4.1 有意义的变量名 75
2.4.2 注释 75
2.4.3 缩进 77
2.4.4 使用具名常量 78
2.5 图形化编程补充读物 80
2.5.1 将样式规则应用于JavaFX应用程序 80
2.5.2 介绍JOptionPane类 81
2.5.3 将输入作为其他数字类型读取 87
2.5.4 编程示例:具有窗口化I/O的找零程序 88
本章小结 90
练习 90
实践程序 92
编程项目 93
自测问题答案 94
第3章 流控制—分支 98
3.1 if-else语句 98
3.1.1 基本的if-else语句 98
3.1.2 布尔表达式 104
3.1.3 比较字符串 107
3.1.4 嵌套的if-else语句 111
3.1.5 多重分支的if-else语句 112
3.1.6 编程示例:给出字母等第 114
3.1.7 案例研究:体重指数 116
3.1.8 条件操作符(选修) 118
3.1.9 exit方法 119
3.2 boolean类型 120
3.2.1 布尔变量 120
3.2.2 优先级规则 121
3.2.3 布尔值的输入和输出 123
3.3 switch语句 124
3.4 图形化编程补充读物 130
3.4.1 指定绘图颜色 131
3.4.2 Yes或No问题的对话框 134
本章小结 135
练习 136
实践程序 137
编程项目 138
自测问题答案 140
第4章 流控制—循环 142
4.1 Java循环语句 142
4.1.1 while语句 143
4.1.2 do-while语句 146
4.1.3 编程示例:臭虫侵扰 149
4.1.4 编程示例:嵌套循环 154
4.1.5 for语句 155
4.1.6 在for语句中声明变量 160
4.1.7 在for语句中使用逗号(选修) 160
4.1.8 for-each语句 162
4.2 用循环编程 162
4.2.1 循环体 162
4.2.2 初始化语句 163
4.2.3 控制循环迭代次数 164
4.2.4 案例研究:使用布尔变量来终止循环 166
4.2.5 编程示例:消费热潮 168
4.2.6 循环中的break语句和continue语句(选修) 170
4.2.7 循环缺陷 172
4.2.8 跟踪变量 174
4.2.9 断言检查 175
4.3 图形化编程补充读物 177
4.3.1 编程示例:一个包含多张脸的JavaFX应用程序 177
4.3.2 绘制文本 181
本章小结 182
练习 182
实践程序 184
编程项目 185
自测问题答案 188
第5章 定义类和方法 193
5.1 类和方法定义 193
5.1.1 类文件和单独编译 195
5.1.2 编程示例:实现Dog类 195
5.1.3 实例变量 196
5.1.4 方法 198
5.1.5 定义void方法 200
5.1.6 定义有返回值的方法 201
5.1.7 编程示例:实现Species类的第一次尝试 205
5.1.8 关键词this 208
5.1.9 局部变量 209
5.1.10 块 211
5.1.11 基本类型参数 212
5.2 信息隐藏和封装 216
5.2.1 信息隐藏 217
5.2.2 前置条件和后置条件注释 217
5.2.3 public和private修饰符 218
5.2.4 编程示例:为什么实例变量应该是私有的 220
5.2.5 编程示例:矩形类的另一种实现 221
5.2.6 访问器方法和修改器方法 223
5.2.7 编程示例:Purchase类 225
5.2.8 调用方法的方法 228
5.2.9 封装 233
5.2.10 使用javadoc自动归档 235
5.2.11 UML类图 235
5.3 对象和引用 236
5.3.1 类类型变量 237
5.3.2 定义类的equals方法 242
5.3.3 编程示例:Species类 244
5.3.4 布尔值方法 246
5.3.5 案例研究:单元测试 247
5.3.6 类类型参数 249
5.3.7 编程示例:类类型参数与