第1章 我该从何处着手 1
1.1 我该从何处着手 1
1.2 轻轻松松编程序 2
1.2.1 计划一个程序类似计划一所房屋 2
1.2.2 我收到来自“客户”的电话 3
1.2.3 我与客户会面 4
1.3 系统开发生命周期 6
1.3.1 第一阶段:前期调查 9
1.3.2 第二阶段:分析 9
1.3.3 第三阶段:设计 12
1.3.4 第四阶段:开发 30
1.3.5 第五阶段:实施 30
1.4 从此将走向何方 31
1.3.6 第六阶段:审核和维护 31
1.5 小结 32
第2章 感受Java 33
2.1 感受Java 33
2.1.1 编写第一个Java程序 34
2.1.2 Java程序的要素 40
2.2 小结 51
第3章 数据 52
3.1 计算机数据 52
3.1.1 变量 52
3.1.2 常量 61
3.2 Java数据类型 64
3.2.1 数值数据类型 65
3.2.2 非数值数据类型 69
3.3.1 算术运算 71
3.3 数据运算 71
3.3.2 比较运算符 84
3.3.3 逻辑运算符 86
3.4 小结 98
第4章 选择结构 99
4.1 选择结构 99
4.1.1 顺序结构 100
4.1.2 Java的选择结构:If语句 103
4.1.3 窗口简介 108
4.1.4 If...Else语句 120
4.1.5 Switch语句/结构 129
4.2 继续进行“成绩等级计算项目” 136
4.3 小结 148
5.1 为什么循环 149
第5章 循环 149
5.1.1 For循环 150
5.1.2 While循环 161
5.2 为“成绩等级计算项目”添加循环 171
5.3 小结 178
第6章 创建自己的方法 179
6.1 模块化的程序更易于维护和理解 179
6.1.1 什么是方法 181
6.1.2 创建自己的方法 182
6.1.3 使用方法优化代码 199
6.1.4 方法重载 207
6.2 小结 216
第7章 从可实例化的类创建对象 217
7.1 从可实例化的类创建对象 217
7.1.1 创建类是模块化编程的扩展 218
7.1.2 从类创建对象 221
7.1.3 从类创建多个对象 224
7.1.4 类的构造函数 226
7.1.5 类的约定 230
7.1.6 构造函数重载 231
7.1.7 类变量 233
7.1.8 销毁对象——Java垃圾收集器 238
7.1.9 类的析构函数 239
7.2 小结 258
第8章 对象中数据的访问控制 259
8.1 控制对象数据的访问 259
8.1.1 实例变量:public还是private 270
8.1.2 使用Set和Get语句 271
8.2 小结 292
9.1 继承 293
第9章 继承和接口 293
9.1.1 在继承出现之前 295
9.1.2 使用继承从其他类创建类 299
9.1.3 提前计划对象的层次 309
9.1.4 接口不是继承 316
9.1.5 在“成绩等级计算项目”中创建超类和子类 321
9.2 小结 332
第10章 数组 333
10.1 什么是数组 333
10.1.1 什么是数组 338
10.1.2 声明和初始化数组 339
10.1.3 将数据赋予数组元素 341
10.1.4 数组处理的奇迹 344
10.1.5 使用数组计算平均值 348
10.1.6 数组的问题 351
10.1.7 多维数组 353
10.1.8 创建对象数组 362
10.2 小结 368
第11章 错误处理 369
11.1 常见的初学者错误 369
11.1.1 编译器错误 369
11.1.2 运行时错误/逻辑错误 382
11.2 Java的错误处理 392
11.2.1 Java异常 394
11.2.2 我们可以修改“成绩等级计算项目”吗 398
11.3 小结 399
第12章 开发图形用户界面 400
12.1 建立图形用户界面 400
12.1.1 设计我们的GUI 400
12.1.2 创建我们的GUI 404
12.1.3 为“成绩等级计算项目”创建GUI 427
12.2 小结 435
第13章 Java中的事件处理 436
13.1 Java事件处理 436
13.1.1 什么是事件 437
13.1.2 什么是监听器 438
13.1.3 在代码中实现一个简单的监听器 439
13.1.4 给监听器传递一个对GUI对象的引用 447
13.1.5 使用WindowListener接口关闭框架 453
13.1.6 使用WindowAdapter类关闭框架 457
13.1.7 在“成绩等级计算项目”中实现监听器 458
13.1.8 测试程序 482
13.1.9 向英文系交付“成绩等级计算项目”并应用该程序 483
13.2 小结 485