第1章 面向对象程序设计概论 1
1.1结构化程序设计 1
1.1.1结构化程序设计方法的产生背景 2
1.1.2结构化程序设计方法 3
1.1.3利用结构化程序设计方法求解问题域的基本过程 4
1.2面向对象的程序设计 5
1.2.1面向对象程序设计方法的产生背景 5
1.2.2面向对象程序设计方法 7
1.3基本概念 11
1.3.1抽象 11
1.3.2封装 12
1.3.3对象 12
1.3.4类 13
1.3.5消息 14
1.3.6继承 14
1.3.7多态 14
1.3.8 UML 15
1.4面向对象的程序设计语言 16
1.4.1什么是面向对象程序设计语言 16
1.4.2几种具有代表性的面向对象的程序设计语言 17
本章小结 20
课后习题 20
第2章Java程序设计语言概述 21
2.1 Java程序设计语言的发展 21
2.2 Java程序设计语言的基本特征 22
2.3 Java程序设计语言环境 25
2.4 Java程序的基本结构 26
2.5 Java程序的基本数据类型 31
2.6标识符、注释、直接量、变量和常量 35
2.7 Java程序的输入输出 40
2.8运算符和表达式 43
2.9流程控制语句 52
2.10一维数组 66
2.10.1一维数组的声明与创建 66
2.10.2一维数组的初始化 67
2.10.3一维数组元素的访问 67
2.10.4一维数组的复制 68
2.10.5 Arrays类的应用 70
2.10.6一维数组的应用举例 71
2.11二维数组 75
2.11.1二维数组的声明与创建 75
2.11.2二维数组的初始化 77
2.11.3二维数组元素的访问 77
2.11.4二维数组的应用举例 78
2.12字符串常量String 80
本章小结 83
课后习题 83
上机实践题 84
第3章 抽象与封装 85
3.1抽象与封装的实现技术 85
3.2类 86
3.2.1类的定义 86
3.2.2成员变量的声明与初始化 90
3.2.3成员方法的声明 92
3.2.4成员方法的重载 93
3.2.5构造方法 95
3.3对象 96
3.3.1对象的创建 96
3.3.2对象成员的使用 98
3.3.3对象的清除 101
3.4访问属性控制 102
3.4.1默认访问属性 102
3.4.2 public访问属性 102
3.4.3 private访问属性 104
3.4.4 protected访问属性 106
3.5静态成员 106
3.5.1类变量的声明及初始化 106
3.5.2类方法 109
3.6对象拷贝 110
3.7几个Java API中的标准类 112
3.7.1随机数类Random 113
3.7.2字符串类StringBuffer 115
3.7.3高精度数值类BigInteger/BigDecimal 117
3.8应用举例 118
本章小结 124
课后习题 125
上机实践题 126
第4章 继承与多态 127
4.1继承与多态的实现技术 127
4.2类的继承 128
4.2.1定义子类 128
4.2.2子类的构造方法 134
4.2.3通用父类Object 135
4.3类成员的隐藏与重载 136
4.3.1成员变量的继承与隐藏 136
4.3.2成员方法的继承、重载与覆盖 137
4.4多态性的实现 139
4.5抽象类 144
4.6接口 146
4.7包 148
4.8应用举例 150
本章小结 155
课后习题 155
上机实践题 156
第5章 异常处理 157
5.1异常概述 157
5.1.1异常的概念 157
5.1.2 Java语言中的异常类 158
5.2异常处理机制 159
5.2.1抛出异常 160
5.2.2捕获异常 160
5.2.3处理异常 163
5.2.4用户声明异常类 163
本章小结 165
课后习题 166
上机实践题 166
第6章 流式输入输出及文件处理 168
6.1流式输入输出处理机制 168
6.2 Java的输入输出流库 169
6.2.1 Java的输入输出流库的标准类 169
6.2.2字节输入流InputStream 169
6.2.3字节输出流OutputStream 170
6.3文件 171
6.3.1文件的创建与管理 171
6.3.2顺序文件的读写 175
6.3.3随机文件的访问 180
6.4字符流 182
6.5对象的串行化 187
6.5.1对象串行化概述 187
6.5.2对象串行化的处理 187
6.5.3应用举例 188
本章小结 190
课后习题 190
上机实践题 191
第7章 泛型程序设计与聚合 192
7.1泛型程序设计 192
7.1.1泛型类的定义与使用 193
7.1.2对象包装器 195
7.2基本的数据结构接口 196
7.2.1 Collection接口 197
7.2.2 Set接口 198
7.2.3 List接口 199
7.2.4 Map接口 201
本章小结 207
课后习题 207
上机实践题 208
第8章 图形用户界面 209
8.1 Java图形用户界面概述 209
8.2用Swing创建图形用户界面 210
8.2.1 Swing概述 210
8.2.2 Swing容器 211
8.3布局管理器 217
8.3.1 FlowLayout布局管理器 218
8.3.2 BorderLayout布局管理器 220
8.3.3 GridLayout布局管理器 221
8.3.4 CardLayout布局管理器 223
8.3.5使布局管理器无效 224
8.4常用Swing组件 226
8.4.1标签 226
8.4.2按钮 228
8.4.3文本框 237
8.4.4列表 241
8.4.5组合框 242
8.4.6菜单 244
8.5在窗口中绘制图形 250
8.5.1坐标系统与变换 250
8.5.2图形设备文本 250
8.5.3设置颜色 251
8.5.4绘制几何图形 252
8.5.5填充几何图形 254
本章小结 256
课后习题 257
上机实践题 257
第9章 事件处理 259
9.1 Java事件处理机制 259
9.2事件的处理过程 259
9.3事件类 260
9.3.1低级事件 261
9.3.2语义事件 262
9.4事件监听器 262
9.5事件类及其对应的监听器接口 263
9.6处理事件 264
9.6.1窗口事件的处理 264
9.6.2监听适配器 268
9.6.3键盘事件的处理 270
9.6.4鼠标事件的处理 272
9.6.5 ActionEvent事件处理 276
9.6.6 ItemEvent事件处理 283
本章小结 285
课后习题 285
上机实践题 286
第10章 多线程程序设计 288
10.1创建线程 288
10.1.1利用Thread类创建线程 288
10.1.2利用Runnable接口创建线程 290
10.2线程状态的转换 291
10.2.1线程的状态 291
10.2.2线程的优先级及其调度 292
10.3线程控制 293
10.3.1基本的线程控制方法 293
10.3.2线程控制举例 295
10.4多线程的同步与互斥 297
10.4.1临界区与互斥 298
10.4.2 Java的互斥锁机制 299
10.4.3线程的同步 301
本章小结 307
课后练习 307
上机实践题 308
第11章 数据库访问的编程技术 310
11.1 Java语言的数据库访问接口——JDBC 310
11.1.1 JDBC框架结构 310
11.1.2 JDBC访问数据库的应用模型 311
11.1.3 JDBC驱动程序 312
11.1.4 JDBC中的主要类和接口 312
11.2 JDBC访问数据库 314
11.2.1利用JDBC访问数据库的基本步骤 314
11.2.2加载JDBC驱动程序 314
11.2.3创建数据库连接 316
11.2.4创建SQL语句对象 317
11.2.5执行Statement 318
11.2.6处理查询结果集 319
11.2.7关闭数据库连接 320
11.3一个简单的JDBC应用程序 320
11.3.1注册ODBC数据源 321
11.3.2 JDBC数据库应用程序 322
本章小结 324
课后习题 324
上机实践题 325
参考文献 327