第1章 Java语言基础 1
1.1 JDK的安装和配置 1
1.1.1 Win98操作系统中JDK的配置 1
1.1.2 WINNT、WIN2000、WINXP操作系统中JDK的配置 3
1.1.3 JDK1.4帮助文档的使用 4
1.2 什么是Java编程语言 5
1.2.1 开发Java编程语言的主要目标 5
1.2.2 Java编程语言的特性 6
1.3 基本Java应用程序——HellowWorldApp 8
1.4 类和包介绍 10
1.5 练习 11
第2章 标识符、关键字和数据类型 12
2.1 Java语言的语句格式 12
2.2 标识符 13
2.3 关键字 14
2.4 数据类型 15
2.4.1 简单数据类型 15
2.4.2 简单数据类型变量的声明和赋值 17
2.4.3 类(class)类型 18
2.4.4 类变量、实例变量和局部变量 19
2.5 术语回顾 21
2.6 练习 21
第3章 表达式和流程控制 22
3.1 运算符和表达式 22
3.1.1 布尔逻辑运算符&&和‖ 23
3.1.2 算术运算符+ 23
3.1.3 右移位运算符〉〉和〉〉〉 23
3.1.4 左移位运算符〈〈 24
3.1.5 类型转换 24
3.2 流程控制 25
3.2.1 分支语句 25
3.2.2 循环语句 27
3.2.3 特殊循环控制语句 28
3.3 练习 29
第4章 数组 30
4.1 一维数组 30
4.1.1 声明数组 30
4.1.2 创建数组 30
4.1.3 初始化数组 31
4.1.4 数组界限 31
4.1.5 复制数组 32
4.2 多维数组 32
4.3 练习 33
第5章 类、方法和构造函数 35
5.1 类 35
5.1.1 类的定义 35
5.1.2 关键字extends 36
5.1.3 关键字super 37
5.1.4 运算符Instanceof 38
5.1.5 对象类型的转换 39
5.1.6 异类收集 39
5.1.7 单继承性 40
5.1.8 多态性 41
5.1.9 封装 42
5.2 方法 44
5.2.1 方法的定义 44
5.2.2 重载方法 46
5.2.3 重写方法 47
5.2.4 调用重写方法的规则 48
5.3 构造函数 49
5.4 包和import语句 52
5.4.1 包 52
5.4.2 import语句 52
5.4.3 包路径布局及CLASSPATH变量 52
5.5 练习 53
第6章 高级语言特征 55
6.1 关键字static 55
6.1.1 静态(static)变量 55
6.1.2 静态(static)方法 56
6.1.3 静态初始化程序 56
6.1.4 一个完整的例子 57
6.2 关键字final 59
6.2.1 final类 59
6.2.2 final方法 59
6.2.3 final变量 59
6.3 抽象类 59
6.4 接口 60
6.5 高级访问控制 61
6.5.1 代码升级 62
6.5.2 “=”运算符与equals()方法 63
6.5.3 toString()方法 64
6.6 内部类 64
6.6.1 内部类基础 64
6.6.2 如何做内部类工作 65
6.6.3 内部类属性 66
6.7 包装类 67
6.8 集合 67
6.9 Vector类 68
6.10 练习 70
第7章 异常和assert 73
7.1 异常 73
7.2 异常处理 74
7.3 异常类 76
7.4 共同异常 77
7.5 处理或声明规则 77
7.6 创建自己的异常 78
7.7 断言(assert)的使用 79
7.7.1 assertion语法知识 80
7.7.2 通过命令行控制assertion功能 81
7.7.3 assertion命令行参数之间的继承关系 82
7.7.4 在程序代码中控制assertion功能 84
7.7.5 AssertionError 85
7.7.6 使用assertion的准则 86
7.8 练习 93
第8章 线程及其操作 94
8.1 线程的实现 94
8.1.1 定义线程 94
8.1.2 创建线程 95
8.1.3 实例 97
8.2 线程的状态及调度 99
8.2.1 线程的状态 100
8.2.2 实例 102
8.3 线程同步 105
8.3.1 线程同步概述 105
8.3.2 notify()和wait()方法 108
8.3.3 死锁 108
8.3.4 实例 108
8.4 练习 111
第9章 输入输出 112
9.1 命令行输入及命令行参数 112
9.1.1 命令行输入 112
9.1.2 实例 114
9.2 文件处理 117
9.2.1 文件与目录管理 117
9.2.2 文件输入输出 120
9.2.3 实例 122
9.3 文件的随机访问 126
9.3.1 如何实现文件的随机访问 126
9.3.2 实例 130
9.4 过滤流 133
9.4.1 过滤流中常用的类 133
9.4.2 实例 134
9.5 字符流 136
9.5.1 用于处理字符流的类 137
9.5.2 实例 139
9.6 对象的串行化 141
9.6.1 概念 142
9.6.2 实例 143
9.7 练习 146
第10章 Java的图形用户界面 147
10.1 AWT包 147
10.1.1 关于AWT 147
10.1.2 实例 150
10.2 布局管理器的使用 153
10.2.1 布局管理器 153
10.2.2 实例 154
10.3 GridBagLayout和无布局管理器 160
10.3.1 概念 160
10.3.2 实例 161
10.4 事件处理 166
10.4.1 事件处理机制 167
10.4.2 实例 167
10.5 适配器、按钮、复选框和单选按钮 173
10.5.1 适配器 173
10.5.2 按钮 174
10.5.3 复选框和单选按钮 176
10.6 菜单、标签和文本框 179
10.6.1 菜单 180
10.6.2 标签 181
10.6.3 文本框 181
10.6.4 实例 184
10.7 列表框、选择框、滚动条 187
10.7.1 列表框 187
10.7.2 选择框 188
10.7.3 滚动条 189
10.7.4 实例 190
10.8 对话框、文件对话框、滚动窗口 195
10.8.1 对话框 195
10.8.2 文件对话框 197
10.8.3 滚动窗口 198
10.8.4 实例 198
10.9 框架、面板、复选框菜单项和弹出式菜单 204
10.9.1 框架 204
10.9.2 面板 205
10.9.3 复选框菜单项 206
10.9.4 弹出式菜单 207
10.9.5 实例 208
1010 画布和Graphics类 211
10.10.1 画布 211
10.10.2 Graphics类 212
10.10.3 实例 214
10.11 Swing包中的组件 217
10.11.1 JApplet 217
10.11.2 JButton 217
10.11.3 JSlider 218
10.11.4 JPasswordField 218
10.11.5 JTabbedPane 218
10.11.6 实例 219
10.12 练习 222
第11章 Applet技术 226
11.1 Applet的编写与执行 226
11.1.1 Applet的定义 226
11.1.2 实例 227
11.2 Applet的AWT绘制 231
11.2.1 paint()、update()和repaint()方法 231
11.2.2 实例 232
11.3 Applet的图像处理 234
11.3.1 实例1 235
11.3.2 实例2 237
11.3.3 实例3 238
11.4 Applet的动画技术 242
11.5 Applet动画技术的优化 248
11.5.1 实例1 249
11.5.2 实例2 252
11.6 Applet的声音技术 256
11.7 Applet间的通信 259
11.8 Applet和浏览器间的通信 264
11.8.1 实例1 264
11.8.2 实例2 266
11.9 练习 269
第12章 模拟试题与答案 271
12.1 模拟试题(1) 271
12.2 答案 302
12.3 模拟试题(2) 302
12.4 答案 352