第1章 Java概述 1
1.1 Java语言简介 1
1.1.1 Java语言简史 1
1.1.2 Java语言、Java虚拟机和Java平台 3
1.1.3 Java语言主要特点 4
1.2 Java语言的应用 5
1.3 Java开发环境设置及开发工具介绍 6
1.3.1 开发环境设置 6
1.3.2 开发工具介绍 7
1.3.3 Java程序的编译和运行 8
1.4 Java程序示例 9
1.4.1 Application程序例 9
1.4.2 Applet程序例 9
1.4.4 JSP程序例 10
1.4.3 Servlet程序例 10
小结 11
习题 11
第2章 Java语言基础 12
2.1 Java语法基础 12
2.1.1 变量、常量和数据类型 12
2.1.2 运算符和表达式 16
2.2 流程控制 22
2.3 数组 28
2.3.1 一维数组 28
2.3.2 多维数组 29
2.3.3 对象数组 30
2.4 Java一般程序结构 32
小结 33
习题 33
3.1.1 面向对象程序设计方法概述 35
第3章 类与对象 35
3.1 面向对象程序设计 35
3.1.2 Java与面向对象 36
3.2 类与对象 36
3.2.1 类的定义 36
3.2.2 域和方法 37
3.2.3 构造方法与对象的创建 37
3.2.4 对象的使用 39
3.3 访问控制符 40
3.3.1 成员访问控制 40
3.3.2 类访问控制 43
3.4 非访问控制符 43
3.5 其他修饰符 47
3.6 接口 47
3.6.1 接口的定义 47
3.6.2 接口的实现 48
3.6.3 接口的应用 51
3.7 包 51
3.7.1 package与import 51
3.7.2 CLASSPATH 53
3.8 继承 54
3.8.1 概念和语法 54
3.8.2 隐藏和覆盖 58
3.8.3 构造方法的重载和继承 62
3.8.4 this和super 67
3.9 组合 70
3.10 多态 72
3.10.1 多态的概念 72
3.10.2 多态的应用 72
3.10.3 构造方法与多态 75
案例分析 76
小结 78
习题 78
第4章 Java语言进阶 80
4.1 变量与变量的传递 80
4.1.1 基本数据类型变量和引用型变量 80
4.1.2 变量的作用域 80
4.1.3 变量的传递与返回 82
4.2 对象的构造与初始化 83
4.2.1 构造方法和多态 83
4.2.2 对象的初始化过程 85
4.3 对象的清除与垃圾回收 88
4.3.1 垃圾回收的机制 88
4.3.2 finalize()方法 89
4.4 接口与抽象类 90
4.5 继承和组合 95
4.6 内部类与匿名类 98
小结 103
习题 103
第5章 异常处理 105
5.1 异常处理 105
5.1.1 异常处理机制 105
5.1.2 异常的捕获与处理 108
5.1.3 finally 110
5.2 自定义异常类 112
5.3 异常规范 114
5.4 标准异常介绍 115
小结 115
习题 116
6.1.1 基础类库 117
6.1 Java基础类 117
第6章 基础类库和工具类库 117
6.1.2 Object 118
6.1.3 基本数据类型的封装 122
6.1.4 System 123
6.1.5 Math 124
6.2 字符串相关类 125
6.2.1 String 125
6.2.2 StringBuffer 127
6.2.3 StringTokenizer 128
6.3 集合 129
6.3.1 集合API 129
6.3.2 Set 129
6.3.3 List 131
6.3.4 Iterator 132
6.3.5 Map 134
6.3.6 集合数据遍历 135
6.3.7 排序和查找 136
6.4 日期与时间 139
6.4.1 Date 139
6.4.2 Calendar 141
小结 144
习题 144
第7章 Java输入输出系统 145
7.1 流 145
7.1.1 InputStream 145
7.1.2 OutputStream 147
7.1.3 FilterInputStream和FilterOutPutStream 147
7.1.4 Reader 148
7.1.5 Writer 149
7.1.6 常见的输入/输出流 150
7.2.1 标准输入/输出 151
7.2 标准输入/输出 151
7.2.2 重定向标准输入/输出 152
7.3 文件访问 152
7.3.1 File 152
7.3.2 文件读写 157
7.3.3 RandomAccessFile 163
7.3.4 压缩文件读写 165
7.4 对象的可串行化 167
7.4.1 Serializable接口 168
7.4.2 Externalizable接口和transient关键字 170
7.5 NIO 172
7.5.1 NIO介绍 172
7.5.2 Buffer 172
7.5.3 Channel 174
7.5.5 Charset 176
7.5.4 Selector 176
小结 177
习题 177
第8章 多线程 179
8.1 线程 179
8.1.1 Java中的线程 179
8.1.2 线程对象的创建 180
8.1.3 多线程 182
8.2 线程调度 183
8.2.1 线程状态和生命周期 183
8.2.2 线程优先级 184
8.2.3 线程的基本控制 185
8.2.4 线程的同步 187
8.2.5 线程的死锁 189
8.2.6 线程间的同步控制 190
案例分析 195
小结 200
习题 200
第9章 图形用户界面 203
9.1 概述 203
9.1.1 AWT和Swing 203
9.1.2 窗口基本原理 204
9.2 布局管理 205
9.2.1 布局管理简介 205
9.2.2 常用布局管理器 206
9.3 事件处理 216
9.3.1 事件响应模型 216
9.3.2 事件监听器接口 218
9.3.3 事件适配器Adapter类 220
9.3.4 使用授权事件模型 223
9.3.5 用内部类实现事件处理 229
9.4 Swing组件 232
9.4.1 Swing包 232
9.4.2 图标和标签 232
9.4.3 文本域 235
9.4.4 按钮 236
9.4.5 组合框 242
9.4.6 选项窗格 243
9.4.7 滚动窗格 245
9.4.8 树 246
9.4.9 表格 250
9.5 多媒体 252
9.5.1 图像的使用 252
9.5.2 动画的实现 255
9.5.3 声音的使用 258
9.6.1 Applet工作原理 259
9.6 Applet 259
9.6.2 Applet类 261
9.6.3 Applet的使用局限 266
案例分析 266
小结 275
习题 275
第10章 网络编程 277
10.1 HTTP的基本概念 277
10.1.1 URL 278
10.1.2 URLConnection 279
10.2 Socket 283
10.2.1 java.net.Socket 284
10.2.2 java.net.ServerSocket 286
10.2.3 简单的服务器和客户机程序 286
10.2.4 多线程服务实现 290
10.3 数据报 294
10.4 非阻塞的Socket 297
10.4.1 Selector 297
10.4.2 SocketChannel和ServerSocketChannel 298
小结 301
习题 301
第11章 JDBC 302
11.1 关系型数据库概述 302
11.1.1 关系型数据库简介 302
11.1.2 SQL语言简介 303
11.2 JDBC简介 306
11.3 JDBC的主要接口 308
11.3.1 数据库驱动相关的接口定义 308
11.3.2 数据库连接接口定义 309
11.3.3 查询和结果表示接口定义 309
11.4 JDBC的应用 310
11.4.1 ODBC设置 311
11.4.2 使用JDBC 313
11.4.3 JDBC示例 316
案例分析 318
小结 323
习题 323
第12章 Web应用 325
12.1 Web 325
12.1.1 Web的基本概念 325
12.1.2 HTML和XML语言 326
12.2 Servlet 328
12.2.1 Servlet简介 328
12.2.2 Servlet的结构和生命周期 329
12.2.3 Servlet API 330
12.2.4 Cookies和Session 338
12.3.1 JSP简单例子 342
12.3 JSP 342
12.3.2 JSP基本语法 343
12.3.3 JSP标签 346
12.3.4 与JavaBeans相关的语法标签 350
12.3.5 JSP的动作标签 357
12.3.6 JSP的内部对象 360
12.4 部署Web应用 363
12.4.1 安装Tomcat 363
12.4.2 运行JSP/Servlet示例 364
12.4.3 Web应用的发布 364
12.5 利用Struts开发基于MVC模式的Web应用程序 365
案例分析 367
小结 374
习题 374
附录 Java编码规范 375
参考文献 389