第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.1 布尔常量 39
3.5 常量 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.4 返回值与return语句 81
5.4.3 形式参数表 81
5.4.2 其他类型的修饰符 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.1 对象方法的创建和调用 99
6.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.1.1 使用数组的原因 143
第9章 数组 143
9.1 数组简介 143
9.1.2 数组定义 145
9.2 一维数组的定义、初始化与应用 145
9.2.1 一维数组的定义 145
9.2.2 初始化一维数组 146
9.2.3 一维数组的应用 148
9.3.2 二维数组的初始化 153
9.3 二维数组的定义、初始化与应用 153
9.3.1 二维数组的定义 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
第12章 图形用户界面设计 199
12.1 容器类——Applet 199
12.2 容器类——窗口 204
12.2.1 创建一个窗口 205
12.2.2 创建一个可关闭窗口 206
12.3 组件 208
12.3.1 文本框 208
12.3.2 文本区 210
12.3.3 标签 212
12.3.4 按钮 213
12.3.5 选项框 214
12.3.6 选择按钮和选项框组 216
12.3.7 列表框 218
12.4 布局设计 220
12.4.1 顺序布局(FlowLayout) 220
12.4.2 边界布局(BorderLayout) 220
12.4.3 卡片布局(CardLayout) 221
12.4.4 网格布局(GridLayout) 223
12.4.5 面板(Panel)在布局中的应用 225
12.4.6 手工布局 226
12.5 事件处理 228
12.5.1 Java语言事件处理机制 228
12.5.2 事件处理的实现 229
12.5.3 常用接口方法 231
12.5.4 事件处理实例 232
本章习题 237
本章小结 237
本章实训 237
第13章 文件的输入/输出与数据库 238
13.1 文件目录管理 238
13.2 使用FileInputStream和FileOutputStream类读写文件 241
13.3 使用DataInputStream和DataOutputStream类读写文件 244
13.4 对象流文件的输入与输出 247
13.5.1 设置数据源 251
13.5 数据库设计 251
13.5.2 SQL语法简介 253
13.5.3 JDBC应用 255
本章小结 260
本章实训 260
本章习题 260
实训1 面向对象分析演练 261
A.1.1 实训目的和要求 261
A.1.2 实训准备与机房安排 261
A.1.3 实训内容 261
A.1.4 实训参考 261
A.2.3 实训内容 265
A.2.4 实训步骤(以操作系统Windows XP为例) 265
A.2.1 实训目的和要求 265
A.2.2 实训准备与机房安排 265
实训2 熟悉BlueJ的编程环境 265
实训3 第一个Java程序 271
A.3.1 实训目的和要求 271
A.3.2 实训准备 271
A.3.3 实训内容 271
A.3.4 实训报告的格式 272
实训4 分支结构和循环结构 274
A.4.1 实训目的和要求 274
A.4.2 实训准备 274
A.4.4 实训报告的格式 276
A.5.2 实训准备 277
A.5.1 实训目的和要求 277
A.5.3 实训内容 277
实训5 类与对象 277
A.5.4 实训报告的格式 279
A.6.2 实训准备 280
A.6.1 实训目的和要求 280
A.6.3 实训内容 280
实训6 类成员 280
A.6.4 实训报告的格式 283
A.4.3 实训内容 284
实训7 类和对象 284
A.7.1 实训目的和要求 284
A.7.2 实训准备 284
A.7.3 实训内容 284
A.7.4 实训报告的格式 287
A.8.2 实训准备 288
A.8.3 实训内容 288
实训8 数组、字符串和异常 288
A.8.1 实训目的和要求 288
A.8.4 实训报告的格式 291
实训9 AWT组件对象设计和应用 292
A.9.1 实训目的和要求 292
A.9.2 实训准备 292
A.9.3 实训内容 292
A.9.4 实训报告的格式 295
A.10.1 实训目的和要求 296
A.10.2 实训准备 296
A.10.3 实训内容 296
实训10 Swing组件对象的定义和应用(选做) 296
A.10.4 实训报告的格式 297
A.11.2 实训准备 298
A.11.3 实训内容 298
A.11.1 实训目的和要求 298
实训11 文件操作I/O和JDBC技术 298
A.11.4 实训报告的格式 299
实训12 综合练习 300
A.12.1 实训内容 300
A.12.2 实训报告的格式 300
实训13 如何使用Java API帮助文档 301
A.13.1 实训内容 301
A.13.2 实训报告的格式 304
附录 模拟试题 305
参考文献 316