第1章 Java SE技术概述 1
1.1 JavaSE应用程序概述 1
1.1.1 JavaSE与JavaEE技术 1
1.1.2 桌面应用程序简介 2
1.1.3 Java小应用程序简介 3
1.1.4 AWT与Swing 4
1.2 Java SE功能概述 5
1.2.1 Java事件处理模型 5
1.2.2 Java图像处理 5
1.2.3 Java对象序列化 6
1.2.4 Annotation与反射 7
1.2.5 Java泛型 7
1.3 小结 7
第2章 AWT组件、容器与事件处理 8
2.1 面向对象窗口系统 8
2.1.1 AWT窗口对象 8
2.1.2 组件与容器 11
2.2 AWT事件处理机制 13
2.2.1 AWT事件处理模型 14
2.2.2 AWT中的事件类 16
2.2.3 事件处理接口 17
2.2.4 事件适配器 20
2.3 常见事件类型处理 22
2.3.1 键盘事件处理 22
2.3.2 窗口事件处理 24
2.3.3 鼠标事件处理 27
2.3.4 菜单事件处理 30
2.4 自定义事件及其处理 34
2.4.1 自定义事件类 34
2.4.2 自定义事件处理接口 35
2.4.3 自定义事件处理类 35
2.4.4 自定义事件产生者 35
2.4.5 自定义事件测试代码 37
2.5 小结 38
第3章 AWT与事件处理模式 39
3.1 Java内部类 39
3.2 内部类事件处理模式 42
3.3 外部类事件处理模式 45
3.4 自身事件处理模式 46
3.5 小结 48
第4章 AWT容器的布局管理器 49
4.1 FlowLayout布局管理器 49
4.2 GridLayout布局管理器 51
4.3 BorderLayout布局管理器 53
4.4 CardLayout布局管理器 54
4.5 GridBagLayout布局管理器 56
4.6 组件的绝对布局管理器 59
4.7 自定义布局管理器 60
4.8 小结 64
第5章 Swing桌面应用程序设计 65
5.1 Swing概述 65
5.1.1 Swing简介 65
5.1.2 Swing的布局管理 67
5.1.3 Swing的事件处理 68
5.2 Swing的组件对象模型 70
5.2.1 Swing的窗口类 70
5.2.2 Swing的组件类 71
5.3 常用的Swing窗口类 72
5.3.1 JPanel面板 72
5.3.2 JFrame面板 73
5.4 常用的Swing组件 75
5.4.1 标签 75
5.4.2 文本输入和编辑组件 76
5.4.3 选择组件 83
5.4.4 列表框和下拉列表框 88
5.4.5 图标和边框 94
5.4.6 表格 96
5.4.7 树 108
5.4.8 菜单 112
5.4.9 对话框 118
5.4.10 自定义Swing组件 120
5.4.11 滚动条处理 122
5.5 小结 124
第6章 Java SE图形图像处理 125
6.1 图形图像处理概述 125
6.2 位图图像处理 126
6.2.1 图像文件编码格式介绍 126
6.2.2 图像文件装入 126
6.2.3 图像类 128
6.2.4 图像的处理 129
6.3 矢量图形处理 133
6.3.1 矢量图形绘图简介 133
6.3.2 常用的绘图方法 134
6.3.3 矢量图形文件的保存 136
6.3.4 矢量图形文件的处理 138
6.4 非图形类图形处理方法 139
6.4.1 文本与字体 139
6.4.2 颜色与线形 140
6.4.3 形状与填充 143
6.5 小结 146
第7章 Java Applet小应用程序 147
7.1 Applet概述 147
7.1.1 Applet的基本概念 147
7.1.2 Applet的生命周期 149
7.1.3 Applet的设计原则 150
7.1.4 Applet应用程序和桌面应用程序的区别 151
7.2 Applet基本机制 152
7.2.1 Applet事件处理 152
7.2.2 Applet和网页的数据交互 154
7.2.3 Applet的网络交互 155
7.3 Applet程序设计 157
7.3.1 窗口的弹出与处理 157
7.3.2 图形与图像 159
7.3.3 URL与资源的获取 160
7.3.4 声音与动画 161
7.3.5 小应用程序的封装 164
7.4 Applet对数据的操作和安全性管理 165
7.4.1 小应用程序的数据操作原则 165
7.4.2 小应用程序的安全性管理 165
7.5 小结 166
第8章 流的高级特性与对象序列化 167
8.1 流的完整模型 167
8.1.1 节点流和处理流 167
8.1.2 流的对象模型 170
8.1.3 标准输入和标准输出 172
8.1.4 字节流文件 174
8.1.5 字符流文件 180
8.1.6 内存流 183
8.1.7 缓冲区流 185
8.1.8 管道 187
8.1.9 目录和文件操作 190
8.2 Java的对象序列化 193
8.2.1 对象序列化的基本概念 193
8.2.2 Java对象序列化 193
8.2.3 对象序列化的基本原则 195
8.3 Java对ZIP流的处理 196
8.3.1 ZIP文件的表示格式 196
8.3.2 ZIP文件的读写 196
8.3.3 ZIP文件的完整性 200
8.4 Java对JAR流的处理 202
8.4.1 JAR文件的表示格式 202
8.4.2 JAR文件的读写 203
8.4.3 JAR文件的完整性 205
8.5 小结 205
第9章 Annotation与反射机制 206
9.1 Java反射机制概述 206
9.2 Java反射模型 210
9.3 使用反射机制进行类方法调用 213
9.3.1 调用构造方法实例化类对象 214
9.3.2 通过反射机制查询方法接口信息 218
9.3.3 调用类的实例方法 220
9.3.4 调用类中的静态方法 221
9.4 使用反射机制访问成员变量 223
9.4.1 使用反射机制访问实例成员变量 223
9.4.2 使用反射机制访问静态成员变量 226
9.4.3 使用反射机制构造和访问数组成员变量 227
9.5 基于配置文件的对象构造 229
9.6 Java Annotation 233
9.6.1 标准的Annotation 234
9.6.2 自定义Annotation标注 237
9.7 使用反射机制分析Annotation 241
9.8 Annotation标注和反射的综合应用 243
9.8.1 类启动器的设计 244
9.8.2 通过标注定义方法中的次序 247
9.9 小结 249
第10章 Java与泛型 250
10.1 泛型概述 250
10.2 泛型类的定义和使用 252
10.2.1 标识符的声明时限制 253
10.2.2 使用通配符进行泛型引用时限制 254
10.2.3 限定通配符的范围 256
10.3 泛型方法的定义和使用 257
10.4 泛型和面向对象的比较 258
10.4.1 在代码复用上的差异 259
10.4.2 泛型和面向对象之间的性能比较 264
10.5 泛型的应用 265
10.5.1 使用泛型描述类的成员变量 266
10.5.2 使用系统中标准的泛型类 267
10.6 小结 268
第11章 使用JBuilder开发桌面应用程序 269
11.1 JBuilder概述 269
11.1.1 JBuilder简介 269
11.1.2 Jbuilder的安装 269
11.1.3 JBuilder应用浏览器 273
11.1.4 开发环境的配置 276
11.2 JBuilder开发桌面应用程序 278
11.2.1 JBuilder开发程序的方法 278
11.2.2 JBuilder中的调试与跟踪 283
11.3 小结 285
第12章 使用Eclipse开发桌面应用程序 286
12.1 Eclipse概述 286
12.1.1 Eclipse简介 286
12.1.2 Eclipse的安装 287
12.1.3 Eclipse开发环境 288
12.2 Eclipse开发桌面应用程序 289
12.2.1 Eclipse开发程序的方法 289
12.2.2 界面设计器的安装 292
12.2.3 设计桌面应用程序 294
12.2.4 程序的调试与跟踪 299
12.3 小结 301
第13章 使用Ant+JUnit开发桌面应用程序 302
13.1 Ant概述 302
13.1.1 Ant简介 302
13.1.2 Ant的安装运行 303
13.1.3 编写build.xml 303
13.1.4 构建文件的结构 305
13.1.5 Ant的Task 307
13.2 JUnit概述 311
13.2.1 JUnit的基本测试模型 311
13.2.2 编写JUnit测试代码 312
13.2.3 测试类的编写原则 315
13.3 增量式桌面应用程序开发 316
13.3.1 增量式开发概述 316
13.3.2 增量式开发方法 316
13.4 小结 319
第14章 编制Java程序编辑器 320
14.1 项目分析 320
14.1.1 项目背景 320
14.1.2 Java程序开发环境 321
14.1.3 项目的UI设计 321
14.1.4 项目的功能说明 322
14.2 项目的实现 323
14.2.1 项目的构架 323
14.2.2 项目的详细设计 323
14.2.3 项目的实现 324
14.2.4 项目的测试和部署 329
14.2.5 项目总结 330
14.3 小结 330
第15章 编制抢钱游戏 331
15.1 抢钱游戏简介 331
15.1.1 项目背景 331
15.1.2 游戏的图形描述 332
15.1.3 项目的界面设计 332
15.2 游戏的开发 333
15.2.1 项目的构架 333
15.2.2 项目的详细设计 333
15.2.3 项目的实现 335
15.2.4 项目的测试和部署 341
15.2.5 项目总结 342
15.3 小结 342
附录 软件调试环境 343
参考文献 345