第一部分 简介 1
第一章 本书简介 1
1.1 如何使用本书 1
1.1.1 系统要求 1
1.1.2 约定 2
1.2 各个部分内容提要 2
1.3 各个章节内容提要 3
1.4 小结 4
第二章 使用 Just Click!Solutions 索引 6
2.1 需要一个解决办法吗?只需点击鼠标就可以了 6
2.1.1 安装索引 6
2.1.2 浏览章节清单 8
2.2 查找源代码文件 9
2.3 小结 11
第三章 Java 2起步 12
3.1 从哪里可以获得 Java 2 12
3.1.1 必要的元素 12
3.1.2 需要的元素 13
3.2 下载 Java 2 13
3.2.1 使用 Sun 的网站 14
3.2.2 下载 Windows 文件 14
3.2.3 下载 Linux 文件 15
3.3 安装 Windows 中的 Java 2 16
3.3.3 设置环境变量 17
3.3.2 安装 JRE 17
3.3.1 安装 JDK 17
3.3.4 安装其他文件 18
3.4 安装 Linux 中的 Java 2 20
3.4.1 使用 RPM 安装 JDK 20
3.4.2 使用 RPM 安装 JRE 20
3.4.3 使用 Shell 脚本安装 JDK 和 JRE 21
3.4.4 升级 glibc 21
3.4.5 安装 Linux 插件 21
3.4.6 安装其他文件 22
3.5 测试安装 22
3.6 小结 23
4.1 欢迎进入 Java 编程世界 25
第二部分 Java 2培训 25
第四章 Java 2基础 25
4.1.1 培训教程清单 26
4.1.2 编译和运行清单 27
4.2 标识符和关键词 28
4.2.1 标识符 28
4.2.2 关键词 29
4.3 注释 31
4.3.1 C 语言风格的注释 31
4.3.2 C++语言风格的注释 31
4.3.3 文档注释 31
4.4 常量值 33
4.4.1 数值型常量 33
4.3.4 使用注释调试 33
4.4.2 字符和字符串常量 34
4.4.3 布尔型常量 34
4.5 数据类型和变量 35
4.5.1 一些很好的术语 35
4.5.2 声明变量 35
4.5.3 整型变量 36
4.5.4 浮点型变量 38
4.5.5 布尔型变量 39
4.5.6 字符变量 40
4.5.7 字符串变量 41
4.6 小结 42
5.1.1 运算符简介 43
第五章 运算符和语句 43
5.1 理解表达式 43
5.1.2 一元整型表达式 44
5.1.3 二元整型表达式 46
5.1.4 速写运算符 47
5.1.5 浮点表达式 48
5.1.6 浮点错误 49
5.1.7 类型转换 50
5.2 流程控制语句 51
5.2.1 关系表达式 51
5.2.2 if-else 语句 52
5.2.3 switch 语句 53
5.2.4 while 语句 54
5.2.5 do-while 语句 55
5.2.6 for 语句 55
5.2.7 label、break 和 continue 语句 56
5.3 小结 58
第六章 面向对象编程 59
6.1 类和对象简介 59
6.1.1 声明类 59
6.1.2 声明对象 60
6.1.3 修改类 62
6.1.4 导入类 63
6.1.5 继承类 65
6.2.1 使用方法编程 66
6.2 类方法 66
6.1.6 子类和超类 66
6.2.2 静态方法 68
6.2.3 序列化对象 69
6.2.4 重载方法 70
6.2.5 理解作用域 71
6.2.6 严格浮点 71
6.3 输入和输出方法 72
6.3.1 输出语句 72
6.3.2 输入语句 73
6.4 清理类对象 74
6.5 小结 75
7.1 一些很好的术语 77
第七章 异常处理 77
7.2 异常简介 78
7.2.1 处理所有的异常 78
7.2.2 使用异常 79
7.3 使用异常编程 80
7.3.1 finally 块 83
7.3.2 嵌套的 try 块 85
7.3.3 跟踪堆栈 86
7.4 类库异常 87
7.4.1 异常类层次 88
7.4.2 Error 和 Exception 类 88
7.4.3 RuntimeException 类 89
7.4.4 RuntimeException 子类 90
7.5 小结 92
第八章 字符串 93
8.1 声明和使用字符串 93
8.1.1 连接字符串 93
8.1.2 字符串作为对象 94
8.2 声明和使用字符 94
8.2.1 混合字符和字符串 95
8.2.2 字符数组 95
8.3 字符串类 96
8.3.1 String 类 96
8.3.2 StringBuffer 类 110
8.4 Character 类 116
8.4.2 Character 数字 117
8.4.1 Character 类的方法 117
8.4.3 Character 类型 119
8.5 获取用户输入 121
8.5.1 提示输入 121
8.5.2 读取命令行参数 122
8.6 小结 123
第九章 数值型类 124
9.1 Math 类 124
9.1.1 Math 类构造器 125
9.1.2 Math 域 125
9.1.3 Math 实用方法 126
9.1.5 Math 三角函数方法 129
9.1.4 Math 舍入方法 129
9.1.6 Math 随机方法 130
9.2 Random 类 131
9.2.1 构造随机数发生器 132
9.2.2 Random 类方法 132
9.2.3 随机整数范围 133
9.2.4 随机字节块 134
9.2.5 其他的 Random 方法 135
9.3 数值型封装类 136
9.3.1 Boolean 封装类 136
9.3.2 Integer 封装类 139
9.3.3 Long 封装类 142
9.3.5 Short 封装类 143
9.3.4 Byte 封装类 143
9.3.6 Float 封装类 144
9.3.7 Double 封装类 146
9.4 小结 146
第十章 数组 148
10.1 Java 数组简介 148
10.1.1 创建数组 148
10.1.2 多个数组 151
10.1.3 多维数组 151
10.1.4 三角型稀疏数组 152
10.1.5 数组初始化 153
10.1.6 对象数组 154
10.1.7 复制数组 155
10.1.8 关于 System.arraycopy()的更多内容 158
10.1.9 数组异常 159
10.2 Arrays 工具类 160
10.2.1 数组排序 160
10.2.2 使用 Comparator 对象排行 163
10.2.3 查找数组 164
10.2.4 比较数组 165
10.2.5 填充数组 166
10.2.6 数组转化为列表 167
10.3 小结 168
11.1.1 数据隐藏 170
11.1 类访问规则 170
第十一章 抽象类 170
11.1.2 受保护成员 172
11.2 抽象 173
11.2.1 为什么要使用抽象类 173
11.2.2 创建抽象类 174
11.2.3 扩展抽象类 174
11.2.4 使用抽象类 175
11.3 小结 181
第十二章 接口 182
12.1 接口简介 182
12.1.1 创建接口 182
12.1.3 扩展接口 183
12.1.2 接口中的异常 183
12.1.4 实现接口 184
12.2 使用接口开发 186
12.3 Java 接口——一些实例 190
12.3.1 Cloneable 接口 190
12.3.2 Comparable 接口 194
12.3.3 Runnable 接口 194
12.3.4 Collection 接口 195
12.4 小结 195
第十三章 包 196
13.1 Java 包简介 196
13.1.2 import 声明 197
13.1.1 导入 Java 包 197
13.1.3 包与访问规则 198
13.2 使用包编程 199
13.2.1 包的名称 199
13.2.2 如何创建包 200
13.2.3 包的演示实例 200
13.3 Java 的标准包 204
13.4 小结 205
第三部分 群体 206
第十四章 群体简介 206
14.1 类的层次结构 206
14.1.1 容器接口 207
14.1.3 具体容器类 208
14.1.2 抽象容器类 208
14.1.4 其他容器类 209
14.2 接口和类表图 209
14.3 Collection 接口 211
14.4 容器使用实例 212
14.4.1 创建容器对象 213
14.4.2 使用容器 213
14.4.3 容器异常 214
14.5 小结 215
第十五章 List 群体 216
15.1 List 接口 216
15.1.1 ArrayList 类 217
15.1.2 LinkedList 类 218
15.2 使用 ArrayList 容器 219
15.2.1 使用 Comparator 和 ArrayList 222
15.2.2 使用 Iterator 接口 225
15.3 使用 LinkedLisk 容器 228
15.3.1 对 LinkedList 容器排序 230
15.3.2 使用 ListIterator 接口 230
15.4 搜索 List 容器 233
15.4.1 Collection 搜索方法 233
15.4.2 List 搜索方法 234
15.4.3 二分法搜索(Binary Search) 234
15.5 构建自己的 List 类 237
15.5.1 编写一个 Stack 类 238
15.5.2 预防非法的方法调用 239
15.5.3 使用 Stack 类 240
15.6 小结 241
第十六章 Set 群体 242
16.1 Set 接口 242
16.1.1 Set 接口 242
16.1.2 SortedSet 接口 243
16.2 Set 容器 246
16.2.1 Hash(哈希)表 246
16.2.2 HashSet 类 247
16.2.3 使用 HashSet 分析文本 248
16.3.1 TreeSet 类 250
16.3 SortedSet 容器 250
16.3.2 使用 TreeSet 分析文本 251
16.3.3 TreeSet 子集 252
16.4 Set 工具 256
16.5 小结 257
第十七章 Map 群体 258
17.1 Map 接口 258
17.1.1 Map 接口 258
17.1.2 SortedMap 接口 260
17.2 Map 容器 261
17.2.1 HashMap 类 261
17.2.2 构建 HashMap 容器 262
17.2.3 修改 Keys 和 Values 264
17.2.4 Map 视图 264
17.2.5 Map.Entry 循环器 265
17.2.6 WeakHashMap 类 266
17.3 SortedMap 容器 267
17.3.1 TreeMap 类 268
17.3.2 创建一个 TreeMap 字典 268
17.4 小结 271
第十八章 实用工具和旧版本类 273
18.1 Collections 类 273
18.1.1 查找和排序方法 274
18.1.3 同步封装方法 275
18.1.2 不可修改的封装方法 275
18.1.4 其他操作 276
18.1.5 其他声明 278
18.2 旧版本容器 280
18.3 BitSet 容器 280
18.4 小结 283
第四部分 小应用程序(Applet)和应用程序 284
第十九章 线程代码 284
19.1 多线程编程的概念 284
19.1.1 一些很好的术语 285
19.1.2 一些很好的类 286
19.2 编写多线程应用程序 287
19.2.1 Thread 类 288
19.2.2 使用线程编程 291
19.2.3 实现 Runnable 接口 295
19.2.4 设置线程的优先级 297
19.2.5 实现 run()方法 298
19.2.6 睡眠线程 299
19.2.7 守护线程 299
19.3 同步 299
19.3.1 对象锁 300
19.3.2 同步(synchronized)语句 300
19.3.3 同步与数据隐藏 302
19.3.4 同步容器 303
19.4 客户-服务器线程代码 304
19.4.1 线程安全 Queue 类 305
19.4.2 Runnable Job 类 306
19.4.3 Server 类 310
19.4.4 Client 类 311
19.4.5 测试客户-服务器模型 313
19.5 小结 315
第二十章 AWT 小应用程序(Applet)和应用程序 316
20.1 AWT 简介 316
20.1.1 创建 AWT 小应用程序 317
20.1.2 创建 AWT 应用程序 320
20.1.3 选择 AWT 还是 Swing 321
20.2 事件模型 323
20.2.1 继承模型 324
20.2.2 委派模型 328
20.3.1 AWT 事件和监听器 330
20.3 使用 AWT 编程 330
20.3.2 适配器和匿名类 332
20.3.3 AWT 应用程序 334
20.4 AWT 类 338
20.5 小结 340
第二十一章 Swing 小应用程序和应用程序 341
21.1 Swing 简介 342
21.1.1 Swing 小应用程序 342
21.1.2 转换小应用程序 HTML 标记 344
21.1.3 Swing 应用程序 346
21.1.4 外观 348
21.2.2 创建下拉菜单 350
21.2 使用 Swing 编程 350
21.2.1 容器和布局 350
21.2.3 Swing 布局 353
21.3 小结 361
第二十二章 Swing 组件 363
22.1 按钮和分组 363
22.1.1 JButton 363
22.1.2 JToggleButton 366
22.1.3 JRadioButton 和 ButtonGroup 367
22.1.4 JCheckBox 371
22.2 对话框 373
22.2.1 消息对话框 373
22.2.2 确认对话框 375
22.2.3 文件对话框 377
22.2.4 JColorChooser 380
22.3 文本区对象 382
22.3.1 JTextField 384
22.3.2 JTextArea 386
22.4 列表 388
22.4.1 JList 388
22.4.2 JComboBox 391
22.5 特色 394
22.5.1 JPopupMenu 394
22.5.2 Action 对象 398
22.5.3 JToolBar 399
22.6 小结 403
第二十三章 Graphics 技术 404
23.1 Graphics(图形)基础 404
23.1.1 使用 paint()编程 404
23.1.2 使用 Color 408
23.1.3 Polygon 类 410
23.1.4 Font 类 411
23.1.5 FontMetrics 类 415
23.2 图像 417
23.2.1 图像显示方法 417
23.2.2 Image 类 417
23.2.3 MediaTracker 类 422
23.2.4 超出可视屏幕范围的图像 423
23.2.5 过滤图像 427
23.2.6 ImageIcon 432
23.3 动画线程 433
23.4 小结 438
第二十四章 输入和输出技术 440
24.1 标准输入和输出 440
24.2 文件和目录 442
24.2.1 File 类 442
24.2.2 文件和目录编程 444
24.2.3 文件信息 446
24.2.4 文件过滤 447
24.3.1 FileInputStream 类 449
24.3 文件流和缓存 449
24.3.2 FileOutputStream 类 450
24.3.3 文件编程 450
24.3.4 BufferedInputStream 类 452
24.3.5 BufferedOutputStream 类 453
24.4 带类型的输入和输出 454
24.4.1 DataInputStream 类 454
24.4.2 读入文本文件 455
24.4.3 DataOutputStream 类 456
24.4.4 带类型的文件编程 456
24.4.5 写入文本文件 459
24.5 随机访问文件 I/O 460
24.6 小结 462
第五部分 Just Click!Solutions 463
第二十五章 Just Click!Solutions 按名称排序 463
第二十六章 Just Click!Solutions 按主题排序 484
附录:CD-ROM 中的内容 516
系统要求 516
在 Windows 或 Linux 中使用 CD-ROM 516
CD中的内容 516
源代码 517
应用程序 517
排除故障 517
CD-ROM 安装说明 518