第1章 面向对象的分析与设计 1
1.1 面向对象概述 2
1.2 确定对象 2
1.2.1 发现对象 2
1.2.2 描述对象 4
1.3 测试对象有效性 5
1.3.1 问题域的相关性 5
1.3.2 独立存在性 6
1.3.3 属性和操作 6
1.4 确定对象的属性和操作 7
1.4.1 如何确定对象属性和操作 7
1.4.2 对象建模 8
1.4.3 一个特殊的对象属性 9
1.5 类与对象概念 10
1.6 软件开发的各个阶段 11
本章小结 12
本章实训 12
本章习题 12
第2章 程序设计入门 13
2.1 程序设计语言 13
2.2 Java程序设计语言特点 14
2.3 Java程序创建和运行 15
2.3.1 程序运行的前提 15
2.3.2 程序的开发阶段 17
2.3.3 Java语言如何实现跨平台运行 17
2.4 算法及其描述 18
2.4.1 算法描述方法 18
2.4.2 顺序结构算法描述 19
2.4.3 分支结构算法描述 19
2.4.4 循环结构算法描述 20
2.4.5 算法的流程图表示法 22
2.4.6 算法应用举例 22
本章小结 23
本章实训 24
本章习题 24
第3章 Java应用程序基本结构与成分 26
3.1 一个基本的Java应用程序 27
3.1.1 Java语句 27
3.1.2 Java程序基本结构 28
3.2 Java句子成分 29
3.2.1 Java语言的单词分类 29
3.2.2 Java语言的标识符 29
3.2.3 Java语言的关键字(保留字) 30
3.2.4 Java语言的分隔符(标点符号) 31
3.3 基本数据类型 32
3.4 基本类型变量的创建与使用 33
3.4.1 变量的创建 33
3.4.2 变量赋值 34
3.4.3 创建变量小窍门 35
3.4.4 在程序中使用变量 36
3.4.5 变量作用域 36
3.5 常量 39
3.5.1 布尔常量 39
3.5.2 整型常量 40
3.5.3 浮点型常量 40
3.5.4 字符型常量 41
3.5.5 字符串型常量 41
3.5.6 符号常量 42
3.6 数据类型转换 42
3.6.1 自动类型转换(隐式转换) 43
3.6.2 强制类型转换 44
3.7 运算符与简单表达式语句 45
3.7.1 赋值运算符 45
3.7.2 算术运算符 45
3.7.3 关系运算符 46
3.7.4 逻辑运算符 47
3.7.5 条件运算符 48
3.7.6 运算符优先级别 49
本章小结 51
本章实训 51
本章习题 51
第4章 分支控制与循环控制语句 53
4.1 if条件控制 53
4.1.1 基本的if结构 53
4.1.2 if语句的嵌套 56
4.1.3 switch语句 59
4.2 循环语句 62
4.2.1 while循环语句 62
4.2.2 do...while循环语句 63
4.2.3 for循环语句 64
4.2.4 break语句 66
4.2.5 continue语句 68
4.2.6 循环语句的嵌套 70
4.2.7 循环语句小结 71
本章小结 71
本章实训 72
本章习题 72
第5章 类与对象编程初步 74
5.1 面向对象编程特点 74
5.2 类的结构 76
5.3 成员变量声明 78
5.4 成员方法声明 80
5.4.1 访问控制修饰符 80
5.4.2 其他类型的修饰符 81
5.4.3 形式参数表 81
5.4.4 返回值与return语句 81
5.5 对象创建、赋值与操作 83
5.5.1 创建对象 84
5.5.2 给对象赋值 86
5.5.3 对象初始化 90
5.5.4 对象操作 94
本章小结 96
本章实训 96
本章习题 96
第6章 再论类成员 98
6.1 对象方法(实例方法) 99
6.1.1 对象方法的创建和调用 99
6.1.2 使用this索引、类变量 100
6.2 静态方法 103
6.3 方法的按值调用与参数作用域 107
6.4 使用main方法 110
6.5 递归结构 112
本章小结 113
本章实训 114
本章习题 114
第7章 方法重载、内部类、系统类 115
7.1 方法重载 115
7.1.1 重载 115
7.1.2 构造方法重载 118
7.2 内部类 121
7.3 使用系统定义的类 124
本章小结 130
本章实训 130
本章习题 130
第8章 字符串 131
8.1 字符串String类 131
8.2 字符串类中的常见方法 132
8.3 字符串与数字、其他对象间的转换 140
本章小结 141
本章实训 142
本章习题 142
第9章 数组 143
9.1 数组简介 143
9.1.1 使用数组的原因 143
9.1.2 数组定义 145
9.2 一维数组的定义、初始化与应用 145
9.2.1 一维数组的定义 145
9.2.2 初始化一维数组 146
9.2.3 一维数组的应用 148
9.3 二维数组的定义、初始化与应用 153
9.3.1 二维数组的定义 153
9.3.2 二维数组的初始化 153
9.3.3 二维数组的应用 155
9.4 数组中的常见方法 157
9.4.1 binarySearch查找方法 157
9.4.2 equals判断数组相等方法 158
9.4.3 fill填充数组元素方法 158
9.4.4 sort排序方法 159
本章小结 160
本章实训 160
本章习题 160
第10章 继承、接口和包 162
10.1 类的继承 162
10.1.1 继承的概念 162
10.1.2 类继承的实现 164
10.1.3 方法的重写 166
10.1.4 重写构造方法 168
10.1.5 子类访问父类方法 171
10.2 抽象(abstract)类 173
10.3 接口 176
10.4 包 178
10.4.1 包的创建 178
10.4.2 包的导入 179
本章小结 180
本章实训 180
本章习题 180
第11章 异常处理 182
11.1 异常概述 182
11.2 捕获异常 185
11.3 使用异常getMessage()方法 188
11.4 抛出并捕获多重异常 190
11.5 finally语句块的使用 192
11.6 创建自己的异常 194
本章小结 197
本章实训 197
本章习题 197
实训1 面向对象分析演练 199
A.1.1 实训目的和要求 199
A.1.2 实训准备与机房安排 199
A.1.3 实训内容 199
A.1.4 实训参考 199
实训2 熟悉BlueJ的编程环境 203
A.2.1 实训目的和要求 203
A.2.2 实训准备与机房安排 203
A.2.3 实训内容 203
A.2.4 实训步骤(以操作系统Windows XP为例) 203
实训3 第一个Java程序 209
A.3.1 实训目的和要求 209
A.3.2 实训准备 209
A.3.3 实训内容 209
A.3.4 实训报告格式 210
实训4 分支结构和循环结构 212
A.4.1 实训目的和要求 212
A.4.2 实训准备 212
A.4.3 实训内容 212
A.4.4 实训报告格式 214
实训5 类与对象 215
A.5.1 实训目的和要求 215
A.5.2 实训准备 215
A.5.3 实训内容 215
A.5.4 实训报告格式 217
实训6 类成员 218
A.6.1 实训目的和要求 218
A.6.2 实训准备 218
A.6.3 实训内容 218
A.6.4 实训报告格式 221
实训7 类的封装与继承 222
A.7.1 实训目的和要求 222
A.7.2 实训准备 222
A.7.3 实训内容 222
A.7.4 实训报告格式 225
实训8 数组、字符串和异常 226
A.8.1 实训目的和要求 226
A.8.2 实训准备 226
A.8.3 实训内容 226
A.8.4 实训报告格式 229
实训9 综合实训 230
A.9.1 实训内容简介 230
A.9.2 实训报告格式 230
实训10 如何使用Java API帮助文档 231
A.10.1 实训内容简介 231
A.10.2 实训报告格式 234
附录 模拟试题 235
参考文献 243