第1章 面向对象程序设计 1
1.1 面向对象与面向过程程序设计 1
1.2 类与对象 2
1.3 封装 3
1.4 继承 4
1.5 多态性 4
1.6 面向对象的建模和UML 5
1.7 小结 5
习题 5
第2章 Java概述和入门程序 6
2.1 Java的历史及发展 6
2.2 Java的特点 6
2.3 Java类库 8
2.4 Java开发环境 8
2.4.1 JDK的下载、安装与使用 8
2.4.2 Java集成开发环境 9
2.5 Java程序类型及简单例子 10
2.5.1 应用程序 10
2.5.2 小应用程序 16
2.5.3 Servlet 19
2.5.4 Bean 20
2.6 小结 20
习题 20
第3章 Java程序设计基础 21
3.1 标识符与数据类型 21
3.1.1 标识符 21
3.1.2 数据类型 22
3.2 表达式与运算符 26
3.2.1 表达式 26
3.2.2 运算符 26
3.2.4 语句和块 33
3.2.3 运算符的优先级 33
3.3 算法的基本控制结构 35
3.3.1 分支语句 35
3.3.2 循环语句 39
3.4 数组 46
3.4.1 一维数组 46
3.4.2 二维数组 48
3.5 小结 51
习题 51
第4章 类和对象 53
4.1 面向对象程序设计的思想 53
4.1.1 概述 53
4.1.2 用类实现抽象数据类型:时钟类 53
4.1.3 类成员:构造函数、方法及域 56
4.2 类的作用域 57
4.3 成员访问控制 58
4.4 方法 59
4.4.1 方法的声明与局部变量 59
4.4.2 方法的参数传递 60
4.4.3 使用set和get方法 61
4.4.4 方法重载 62
4.5 初始化类的对象:构造函数 65
4.6 this 67
4.7 垃圾收集 69
4.8 static方法和域 69
4.9 类的组合 72
4.10 包的创建和访问 74
4.10.1 包的创建 74
4.10.2 包的使用 75
习题 77
4.11 小结 77
第5章 类的继承和派生 79
5.1 继承的概念和软件的重用性 79
5.2 派生类的定义 80
5.3 作用域、继承 81
5.4 方法的重新定义 81
5.5 继承下的构造函数和finalize方法 84
5.6 超类和子类的关系 87
5.7 继承的程序设计举例 92
5.8 小结 95
习题 96
第6章 多态性 97
6.1 多态性概念和实例 97
6.2 继承层次结构中对象间的关系 97
6.3.1 抽象类和具体类的概念 99
6.3 抽象类和抽象方法 99
6.3.2 抽象方法的声明 100
6.3.3 抽象类的声明 100
6.3.4 抽象类程序设计的举例 100
6.4 接口的声明和实现 104
6.4.1 接口的概念 104
6.4.2 接口的声明 104
6.4.3 接口的实现 105
6.4.4 接口的程序设计举例 105
6.5 final方法和final类 109
6.6 嵌套类 110
6.6.1 内部类的概念 110
6.6.2 内部类的声明 110
6.6.3 匿名内部类声明 110
6.6.4 嵌套类的程序设计举例 110
习题 115
6.7 基本数据类型的包装类 115
6.8 小结 115
第7章 Java实用包 117
7.1 Math类 117
7.2 字符串类String 117
7.2.1 String构造函数 117
7.2.2 String方法 119
7.3 StringBuffer类 124
7.3.1 StringBuffer构造函数 124
7.3.2 StringBuffer类的方法 125
7.4 StringTokenizer类 129
7.5 Vector类 131
7.6 小结 134
习题 134
8.2 颜色控制 136
8.1 图形环境和图形对象 136
第8章 图形和Java 2D 136
8.3 字体控制 140
8.4 绘制图形 141
8.4.1 绘制线条、矩形和椭圆 141
8.4.2 绘制弧 142
8.5 Java 2D API 144
8.6 小结 146
习题 147
第9章 GUI组件和设计 148
9.1 Swing和AWT组件概述 148
9.2 标签JLabel 150
9.3 单行文本框和多行文本框 152
9.4 事件处理模型 153
9.5 命令按钮 155
9.6.1 复选框 156
9.6 复选框按钮和单选按钮 156
9.6.2 单选按钮 159
9.7 组合框 161
9.8 带滚动窗格的面板 163
9.9 列表 164
9.10 面板 165
9.11 适配器类 167
9.12 鼠标事件 169
9.13 键盘事件 171
9.14 布局管理器 173
9.14.1 FlowLayout布局管理器 173
9.14.2 BorderLayout布局管理器 174
9.14.3 GridLayout布局管理器 175
9.14.4 GridBagLayout布局管理器 177
9.14.5 CardLayout布局管理器 177
9.15.1 创建定制的JPanel子类 178
9.15 创建定制的JPanel的子类及其事件处理 178
9.15.2 能处理自身事件的JPanel子类 180
9.16 框架 183
9.17 菜单 185
9.18 JTabbedPane 189
9.19 JDesktopPane和JInternalFrame 190
9.20 小结 193
习题 193
第10章 异常处理 195
10.1 异常处理概述 195
10.2 异常分类 197
10.3 异常的捕获处理 198
10.4 重新抛出异常 200
10.4.1 异常对象的生成 200
10.4.2 重新抛出异常对象 201
10.5 定义新的异常类型 203
10.6 小结 205
习题 206
第11章 输入和输出流处理 208
11.1 输入和输出流概述 208
11.1.1 输入流和输出流 208
11.1.2 字节流和字符流 208
11.1.3 输入和输出类的继承层次结构 208
11.2 File类 209
11.3 基于字节的输入和输出类及应用实例 210
11.3.1 抽象类InputStream和OutputStream 210
11.3.2 FileInputStream和FileOutputStream类 211
11.3.3 随机访问文件类 213
11.3.4 过滤字节流 215
11.3.5 标准输入输出流 218
11.3.6 对象流 219
11.3.7 管道流 221
11.3.8 内存读写流 222
11.3.9 序列输入流 223
11.4 基于字符的输入和输出类及应用实例 223
11.4.1 InputStreamReader和OutputStreamWriter类 223
11.4.2 BufferedReader和BufferedWriter类 224
11.4.3 其他字符流 225
11.5 小结 225
习题 225
第12章 线程 227
12.1 线程的概念 227
12.2 线程的状态:线程的生命周期 228
12.3 线程的创建和执行 229
12.3.1 Thread类的构造方法 229
12.3.2 通过实现Runnable接口创建线程 232
12.4 线程的优先级与线程调度策略 233
12.3.3 通过继承Thread类创建线程 233
12.5 线程同步 237
12.5.1 共享数据的线程“互斥”锁定 237
12.5.2 传送数据的线程同步运行 240
12.5.3 死锁问题 241
12.6 多线程举例 241
12.7 小结 243
习题 243
第13章 JDBC技术和数据库开发应用 244
13.1 JDBC技术 244
13.1.1 JDBC的体系结构 244
13.1.2 JDBC驱动程序类型 245
13.1.3 JDBC API的主要类和接口简介 245
13.2 创建SQL Server服务器上的数据库 246
13.2.1 SQL Server的组件简单介绍 246
13.2.2 创建用户数据库study和ODBC数据源 248
13.3 Java应用程序通过JDBC存取数据库的过程 249
13.3.1 应用JDBC存取数据库的步骤 249
13.3.2 JDBC存取SQL Server数据库的简单实例 252
13.4 JDBC中的主要接口和类 253
13.4.1 DriverManager类 253
13.4.2 Connection接口 254
13.4.3 Statement接口 254
13.4.4 PreparedStatement接口 255
13.4.5 CallableStatement接口 257
13.4.6 Java数据类型和SQL中支持的数据类型的对应关系 258
13.4.7 ResultSet接口 258
13.4.8 ResultSetMetaData接口 259
13.4.9 DatabaseMetaData接口 259
13.5 数据库开发应用实例 259
13.5.1 study数据库的插入、修改、删除记录的程序设计 260
13.5.2 查询study数据库的程序设计 279
13.6 小结 292
习题 292
第14章 JSP技术和开发实例 293
14.1 JSP概述 293
14.2 JSP运行环境的安装 295
14.2.1 Tomcat的安装和配置 295
14.2.2 在Tomcat上部署Web应用程序 296
14.3 JSP指令 298
14.3.1 page指令 298
14.3.2 include指令 300
14.4 JSP隐含对象 302
14.4.1 J2EE Web应用程序的作用域 302
14.4.2 JSP的隐式对象 303
14.5.1 JSP脚本元素 304
14.5 JSP脚本 304
14.5.2 JSP脚本的应用实例 306
14.6 JSP标准动作和应用实例 308
14.6.1 <jsp:param> 309
14.6.2 <jsp:include>动作和应用实例 309
14.6.3 <jsp:forward>动作和应用实例 310
14.7 JavaBeans在JSP中的使用 313
14.7.1 JavaBeans的定义格式 313
14.7.2 在JSP中调用JavaBeans的格式 314
14.7.3 在JSP中使用JavaBeans的例子 317
14.8 JSP数据库编程应用实例 319
14.8.1 客户的信息登记和信息浏览的例子 320
14.8.2 JSP的汉字信息的读取和写入数据库的例子 330
14.9 小结 336
习题 337
参考文献 338