第0章 计算机和程序设计语言初步 1
0.1 计算机发展历史 1
0.2 计算机体系结构 3
0.3 程序设计语言 8
0.4 Java 9
习题 9
第1章 面向对象的程序设计与软件开发初步 11
1.1 类和对象 11
1.2 消息和方法 13
1.3 类和实例数据值 17
1.4 继承 18
1.5 软件工程和软件生命周期 21
1.6 用Java玩得开心 22
习题 24
第2章 Java程序设计基础 27
2.1 第1个Java应用程序 27
2.2 程序组成部分 35
2.3 编辑——编译——运行的循环 43
2.5 示例程序:显示消息 45
2.4 javabook包 45
2.6 第1个Java Applet 49
习题 56
第3章 数值数据 63
3.1 变量 63
3.2 算术表达式 69
3.3 常数 73
3.4 Math类 75
3.5 InputBox 76
3.6 OutputBox 79
3.7 示例程序:贷款计算器 83
3.8 数值表示法 92
习题 95
第4章 定义可实例化类 103
4.1 定义可实例化类 103
4.2 可实例化类和构造函数 113
4.3 可视修饰符:public和private 116
4.4 局部变量、返回值和参数传递 120
4.5 使用可实例化类的贷款计算器 124
习题 134
第5章 用applet处理输入 143
5.1 在applet中使用GUI对象 143
5.2 增加ActionListener到一个事件源 149
5.3 GUI对象的绝对定位法 154
5.4 Button类 156
5.5 转换文本为数值 157
5.6 示例程序:判定身体质量指数(BMI) 159
5.7 作为应用程序运行一个applet 167
习题 168
第6章 选择语句 173
6.1 if语句 173
6.2 布尔表达式和布尔变量 179
6.3 嵌套的if语句 182
6.4 ListBox 188
6.5 switch语句 191
6.6 示例程序:绘制图形 195
习题 212
7.1 while语句 219
第7章 重复语句 219
7.2 编写重复语句容易犯的错误 222
7.3 do-while语句 226
7.4 ResponseBox 229
7.5 for语句 232
7.6 嵌套的for语句 236
7.7 Format类 239
7.8 贷款表 244
7.9 示例程序:Hi-Lo游戏 247
7.10 递归方法(选修) 258
习题 261
第8章 字符与字符串 269
8.1 字符 269
8.2 字符串 271
8.3 简单类型与引用类型 280
8.4 StringBuffer 286
8.5 作为参数传递对象 291
8.6 从方法返回对象 295
8.7 示例程序:Word Play 298
习题 307
第9章 数组 313
9.1 数组基础 313
9.2 对象的数组 321
9.3 传递数组给方法 328
9.4 MultiInputBox 333
9.5 自引用指针 335
9.6 示例程序:地址簿 340
9.7 二维数组 353
9.8 向量 359
习题 363
第10章 排序与查找 367
10.1 查找 367
10.2 排序 371
10.3 堆排序 376
10.4 示例程序:排序AddressBook 388
习题 392
11.1 File和FileDialog对象 397
第11章 文件输入输出 397
11.2 低级文件I/O 402
11.3 高级文件I/O 406
11.4 异常处理 413
11.5 对象I/O 417
11.6 类示例:保存AddressBook对象 420
习题 427
第12章 可重用类和程序包 431
12.1 对象类型 431
12.2 方法过载和重载的方法 432
12.3 类示例:可重用的EggyPeggy和Hilo 438
12.4 程序包 459
习题 461
第13章 GUI对象和事件驱动编程 465
13.1 在一个框架窗口中放置按钮 466
13.2 处理事件 471
13.3 在框架窗口中放置TextField对象 476
13.4 菜单 478
13.5 处理鼠标事件 483
13.6 其他GUl对象 490
13.7 例程:简单的计算器 494
习题 504
第14章 继承和多态 509
14.1 用继承定义类 509
14.2 利用多态高效地使用类 513
14.3 继承和成员的可访问性 515
14.4 继承和构造函数 520
14.5 抽象超类和抽象方法 524
14.6 何时不使用继承 529
习题 546
第15章 班级花名册维护程序 551
15.1 方法调用顺序框图 551
15.2 问题陈述 552
15.3 总体规划 553
15.4 开发的第1步:带有菜单的程序框架 556
15.5 开发的第2步:创建一个新的花名册 560
15.6 开发的第3步:增加学生 566
15.7 开发的第4步:删除学生 572
15.8 开发的第5步:编辑学生姓名 576
15.9 开发的第6步:编辑测试分数并计算等级 580
15.10 开发的第7步:显示学生信息 586
15.11 开发的第8步:保存班级花名册 595
15.12 开发的第9步:完成并改进 603
15.13 StudentNameDialog对话框 604
15.14 TestScoreDialog对话框 612
习题 616
16.1 递归的基本元素 621
第16章 递归方法 621
16.2 目录列表 622
16.3 拼词游戏 624
16.4 汉诺塔 627
16.5 快速排序 630
16.6 不应使用递归的情况 635
习题 637
附录A javabook包 639
附录B 对象框图摘要 653
附录C javabook包中的常用类 655