第1章 Java概述 1
1.1 Java技术的出现与形成 1
目录 1
1.2 Java语言的特色 2
1.3 Java的开发和执行环境 4
1.3.1 JDK的下载 4
1.3.2 JDK的安装与环境配置 4
1.3.3 JDK环境工具简介 5
1.4 一个简单的独立应用程序 7
1.4.1 从编辑程序到执行程序的完整过程 7
1.4.2 Java独立应用程序的基本结构 10
1.5 一个简单的Applet程序 11
1.6 一个具有输入功能的程序 12
习题1 14
1.7 小结 14
第2章 Java语言基础 15
2.1 变量和数据类型 16
2.1.1 变量的名字 16
2.1.2 变量的类型 16
2.1.3 变量初始化 18
2.1.4 final变量 19
2.2 运算符 19
2.2.1 算术运算符 20
2.2.2 关系与逻辑运算符 23
2.2.3 位运算符 25
2.2.4 赋值运算符 25
2.2.5 其他运算符 26
2.3.1 表达式 27
2.3 表达式与语句 27
2.3.2 语句 28
2.4 控制语句 29
2.4.1 if语句 30
2.4.2 switch语句 31
2.4.3 while和do-while语句 32
2.4.4 for语句 34
2.4.5 跳转语句 34
2.5 数组 37
2.5.1 创建和使用数组 38
2.5.2 对象数组 39
2.5.3 多维数组 41
2.5.4 复制数组 42
习题2 43
2.6 小结 43
第3章 类与对象 45
3.1 类 45
3.1.1 类的概念与定义 45
3.1.2 类声明 46
3.1.3 成员变量的声明 49
3.1.4 方法的声明与实现 51
3.2 创建对象与定义构造方法 61
3.2.1 创建对象 61
3.2.2 定义和使用构造方法 63
3.3 修饰符 64
3.3.1 类的修饰符 64
3.3.2 域修饰符 65
3.3.3 方法修饰符 66
3.3.4 访问控制符 68
3.4.1 嵌套类 75
3.4 类的进一步说明 75
3.4.2 对象的撤销与清理 77
3.5 程序包 77
3.5.1 包的创建 78
3.5.2 包的使用 79
3.6 小结 81
习题3 81
第4章 继承与多态 83
4.1 子类、父类与继承机制 83
4.1.1 继承的概念 83
4.2 继承的实现 85
4.2.1 子类的定义 85
4.1.2 类的层次 85
4.2.2 域的继承与隐藏 88
4.2.3 方法的继承与覆盖 91
4.3 多态性 93
4.3.1 多态性的概念 93
4.3.2 覆盖实现多态性 94
4.3.3 重载实现多态性 95
4.4 构造方法的继承与重载 98
4.4.1 构造方法的继承 98
4.4.2 构造方法的重载 99
4.4.3 构造方法的综合示例 100
4.5 接口 102
4.5.1 接口与多继承 103
4.5.2 接口的定义 103
4.5.3 接口的实现 104
4.5.4 接口的使用 105
4.5.5 接口的完整实例 106
4.6 小结 108
习题4 108
第5章 Java的图形用户界面 110
5.1 图形用户界面概述 110
5.2 基本的图形用户界面程序 111
5.3 Container类 112
5.3.1 一个简单的GUI组件与事件的响应 114
5.3.2 简单的GUI输入输出 116
5.4 事件处理 119
5.4.1 基本事件 119
5.4.2 Java中的事件处理 120
5.5.1 布局管理器、面板和标签 131
5.5 GUI组件和布局管理器 131
5.5.2 List和TextArea组件 136
5.6 菜单和对话框 142
5.6.1 菜单 142
5.6.2 对话框 144
5.7 绘制图形 147
5.7.1 Graphics类 147
5.7.2 简单绘图 148
5.7.3 Canvas类 152
5.7.4 Font类 157
5.8 从AWT到Swing的转换 159
5.9 小结 161
习题5 161
第6章 流和文件 163
6.1 I/O流概述 163
6.1.1 从类的层次看I/O流 164
6.1.2 从处理的对象看I/O流 171
6.2 保存和读取字节级数据 173
6.2.1 保存字节级数据 173
6.2.2 读取字节级数据 175
6.2.3 运用缓冲流来改善效率 178
6.2.4 文件操作 182
6.3 保存和读取字符数据 187
6.3.1 读取字符数据 188
6.3.2 保存字符数据 192
6.4 保存和读取对象数据 195
6.4.1 保存对象数据 195
6.4.2 读取对象数据 197
6.5 随机流访问 199
6.6 小结 201
习题6 202
第7章 多线程与异常处理 203
7.1 多线程的基本概念 203
7.1.1 多任务 203
7.1.2 线程与多线程 203
7.1.3 Java对多线程的支持 204
7.1.4 线程的状态 204
7.1.5 线程的优先级 206
7.2 线程的使用方法 206
7.2.1 通过继承Thread类构造线程 207
7.2.2 通过实现Runnable接口来构造线程 214
7.3 线程的同步 216
7.3.1 使用多线程不当造成的数据崩溃 216
7.3.2 同步线程 222
7.4.1 Java的出错类型 228
7.4 异常处理 228
7.4.2 异常的处理 231
7.4.3 finally子句 234
7.4.4 异常的抛出 236
7.5 小结 240
习题7 240
第8章 Applet 242
8.1 Applet基础 242
8.1.1 Applet类的定义 242
8.1.2 Applet的生命周期 244
8.1.3 独立应用程序与Applet的转换 246
8.1.4 确保Applet正常运行 247
8.2 <APPLET>标记 248
8.2.1 <APPLET>标记属性 248
8.2.2 利用标记参数向Applet传递信息 251
8.3 Applet应用 256
8.3.1 Applet与图形用户界面(GUI) 256
8.3.2 Applet与线程 259
8.3.3 Applet编程技巧 259
8.4 利用AppletViewer调试Applet 267
8.5 小结 270
习题8 271
第9章 网络编程 272
9.1 网络编程基础 272
9.1.1 IP地址 272
9.1.2 端口 273
9.1.3 套接字 273
9.1.4 Intemet协议 273
9.1.5 URL类 274
9.2.1 创建一个URL 275
9.2 使用URL访问WWW资源 275
9.2.2 直接从URL读取内容 276
9.2.3 建立一个URL连接并从中读取内容 278
9.3 客户和服务器编程 280
9.3.1 创建客户程序 280
9.3.2 编写服务器应用程序 291
9.4 基于客户/服务器模式的分布计算 297
9.4.1 分布模型 297
9.4.2 并行应用的实现框架 297
9.4.3 并行计算实例 299
9.5 小结 306
习题9 307
10.1.1 JDBC的用途 308
10.1.2 从ODBC到JDBC 308
第10章 Java与数据库的连接 308
10.1 JDBC概述 308
10.1.3 JDBC的实现及其驱动程序 309
10.2 JDBC预备知识 310
10.2.1 SQL基本内容 310
10.2.2 存储过程 313
10.3 JDBC API介绍 315
10.3.1 连接管理 315
10.3.2 数据库访问 316
10.3.3 数据类型和数据库元数据 316
10.3.4 异常和警告 316
10.4 JDBCAPI的使用方法 316
10.4.1 JDBC API工具 316
10.4.2 连接数据库 318
10.4.3 使用JDBC创建基本表和视图 325
10.4.4 使用JDBC执行数据库查询 327
10.4.5 使用JDBC更新数据库 331
10.5 小结 335
习题10 335
第11章 Java远程方法调用 337
11.1 概述 337
11.2 一个简单的RMI应用实例 338
11.3 RMI的类和接口及其实现分析 343
11.3.1 远程接口 343
11.3.2 RemoteException类 343
11.3.3 RemoteObject类及其子类 344
11.3.5 Stub(存根)和Skeleton(框架) 345
11.3.4 实现远程接口 345
11.3.6 配置RMI程序 346
11.3.7 启动RMI注册表 346
11.3.8 Naming类 347
11.4 RMI体系结构与实现机制 349
11.4.1 RMI体系结构 349
11.4.2 RMI实现机制 351
11.5 RMI的进一步探讨 353
11.5.1 RMI的安全性 353
11.5.2 传递对象和加载动态类 354
11.5.3 远程对象激活 360
11.5.4 分布式垃圾收集 365
11.6 小结 365
习题11 367
附录 JDK环境工具及其参数补充说明 368