1.1 Java语言基础 1
1.1.1 Java语言产生的背景 1
第一章 Java语言与Visual J++开发环境 1
1.1.2 Java语言的主要特点 3
1.1.3 Java语言与C++语言的区别 6
1.2 Visual J++的安装 8
1.2.1 Visual J++对硬件环境的要求 8
1.2.2 Visual J++软件包的内容 9
1.2.3 安装Visual J++ 9
1.2.4 运行Visual J++ 11
1.3 Developer Studio集成开发环境 13
1.4 Visual J++概述 13
1.4.3 Visual J++文本编辑器 14
1.4.1 Visual J++编译器 14
1.4.2 Visual J++调试器 14
1.4.4 自动生成工具Applet Wizard 15
1.4.5 Visual J++的其他工具 15
1.5 Visual J++集成环境菜单介绍 17
1.5.1 File菜单 18
1.5.2 Edit菜单 19
1.5.3 View菜单 20
1.5.4 Insert菜单 20
1.5.5 Project菜单 20
1.5.6 Build菜单 21
1.5.7 Tools菜单 21
1.5.9 Help菜单 22
1.5.8 Window菜单 22
第二章 Visual J++的编译器、解释器和浏览器 24
2.1 Sun公司JDK简介 24
2.1.1 Java JDK的组成 24
2.1.2 Java JDK编译器简介 25
2.1.3 Java解释器简介 25
2.2 Visual J++编译器jvc.exe简介 25
2.2.1 Visual J++编译器的语法规则 26
2.2.2 文件名语法介绍 26
2.2.3 Visual J++编译器的用法及选项次序 26
2.2.4 如何设置classpath环境变量 27
2.2.5 编译器命令行选项集 27
2.3.2 Visual J++解释器jview.exe用法 29
2.3.1 Visual J++解释器的语法规则 29
2.3 Visual J++解释器jview.exe简介 29
2.3.3 Visual J++解释器jview选项介绍 30
2.4 浏览器Internet Explorer 30
第三章 Java语言、类、接口和包 31
3.1 Java符号集简介 31
3.1.1 Java保留字 32
3.1.2变量 32
3.1.3 注释 33
3.2 Java数据类型简介 34
3.2.1布尔类型 34
3.2.2 字符类型 35
3.2.3整数类型 35
3.2.4 浮点数类型 37
3.2.5 数组 38
3.2.6 基本数据类型变量的初始值 39
3.3 Java运算符简介 40
3.4 类型转换 40
3.5 程序流程的控制方法 41
3.5.1 分支控制结构 41
3.5.2 循环控制结构 43
3.5.3 转移语句 45
3.5.4 返回语句 45
3.6 类概念简介 46
3.6.1 类的声明方法 46
3.6.2 类的继承机制 47
3.6.3 类的修饰字 48
3.6.4 类的成员——变量和方法 50
3.6.5 抽象类的讨论 54
3.7 接口概念简介 55
3.7.1接口的声明方法 56
3.7.2 接口继承关系的讨论 56
3.7.3 如何实现一个接口 57
3.7.4 如何实现多个接口 57
3.8 程序包概念简介 58
3.8.1 程序包的声明方法 58
3.8.2 如何引用程序包 59
3.8.3 Java语言提供的系统程序包 59
第四章 学会使用Applet Wizard程序设计向导 61
4.1 如何建立Applet程序 61
4.2 如何运行Applet程序 66
4.3 使自己的程序Web化 68
第五章 创建一个Java Applet程序 69
5.1 Java Applet程序基础知识 69
5.1.1 Java Applet程序的代码特点 69
5.1.2 Applet程序安全性模型 70
5.1.3 Internet Explorer中的Applet程序安全性 70
5.1.4 Applet程序的生存周期 71
5.1.5 Applet程序中的重要方法 71
5.2 使用Applet Wizard创建一个Applet程序 71
5.2.1 创建Applet程序 72
5.2.2 Visual J++生成的MyApp.java源程序 74
5.2.4 编译Applet程序 81
5.2.3 Visual J++生成的MyApp.html文档 81
5.2.5 建立HTML页面 82
5.2.6 运行Applet程序 83
5.3 Java应用程序的创建 83
5.3.1 Java应用程序的生命周期 83
5.3.2 如何创建Java应用程序 84
5.3.3 Visual J++生成的MyAppl.java源文件 84
5.3.4 Visual J++生成的MyAppl-Frame.jave源文件 92
5.3.5 如何联编应用程序 93
5.3.6 如何运行项目MyAppl 93
5.3.7 有关Applet程序和应用程序的说明 94
第六章 Visual J++项目设计技术 95
6.1 项目工作区窗口介绍 95
6.1.3 Info View选项卡 96
6.1.2 File View选项卡 96
6.1.1 Class View选项卡 96
6.2 使用项目工作区 97
6.2.1 如何创建一个空的项目工作区 97
6.2.2 在项目工作区中增加项目 99
6.2.3 如何创建包含一个项目的项目工作区 100
6.2.4 向项目中增加文件 101
6.3 使用项目设置技术 108
6.3.1 项目配置概念 109
6.3.2 熟悉Project Settings对话框 112
6.4 如何设置目录 115
第七章 类管理工具Class View和WizardBar 117
7.1 Class View和WizardBar的区别 117
7.2.2 Class View的组成 118
7.2.3 如何用Class View浏览源代码 118
7.2 Class View功能介绍 118
7.2.1 了解Class View的特性 118
7.2.4 Class View显示内容的排序方法 119
7.2.5 Class View视区的隐藏和显示 119
7.3 如何用Class View为程序增加类、方法和变量 119
7.3.1 给项目ClassDemo增加新类 120
7.3.2 给类CtrlButton增加变量 121
7.3.3 给类CtrlButton增加方法 122
7.3.4 实现完整的项目ClassDemo 123
7.3.5 项目的编译执行 125
7.4.2 WizardBar的基本组成 126
7.4.1 WizardBar工具条的显示或隐藏 126
7.4 WizardBar工具介绍 126
7.4.3 WizardBar的跟踪功能 127
7.4.4 通过键盘访问WizardBar 128
7.4.5 直接向WizardBar控件中输入 129
第八章 使用Visual J++调试器 130
8.1 调试程序的前提条件 130
8.1.1 为调试进行的项目设置 130
8.1.2 在调试模式下联编项目 131
8.1.3 调试程序举例 131
8.2 熟悉调试器的使用 133
8.3调试窗口与调试器 134
8.2.3 用Run to Cursor命令启动调试器 134
8.2.2 用Step Into命令启动调试器 134
8.2.1 用Go命令启动调试器 134
8.3.1 监视窗口 135
8.3.2 变量窗口 136
8.3.3 调用堆栈窗口 137
8.3.4 反汇编窗口 138
8.4 掌握调试对话框的操作方法 139
8.4.1 断点对话框 139
8.4.2 快速查看对话框 140
8.4.3 线程对话框 141
8.4.4 异常对话框 141
8.4.5 使用Data Tips 142
8.5 调试命令简介 143
8.5.1 从菜单访问调试命令 143
8.5.3 断点操作技术 144
8.5.2 Debug工具条 144
8.6 程序调试举例 145
8.6.1 启动调试器 145
8.6.2 使程序运行到指定位置 146
8.6.3 使用Step Into命令 147
8.6.4 使用Step Out和Step Over命令 147
8.6.5 查看变量的值 148
8.6.6 修改变量的值 149
8.6.7 多线程程序的调试方法 149
第九章 资源编辑器和文本编辑器的使用 150
9.1 资源模板的使用 150
9.1.1 创建资源模板 151
9.2 对话框编辑器的使用 152
9.1.2 打开资源模板 152
9.2.2 如何选取构件 155
9.2.3 如何调节构件大小 155
9.2.4 对话框布局技巧 157
9.2.5 使用辅助线和页边距 158
9.2.6 使用布局网格 159
9.2.7 查看的制表键序和定义助记符键 160
9.2.8 测试所设计的对话框 161
9.3 使用图形编辑器 162
9.3.1 图形编辑器简介 162
9.2.1 如何向对话框增加构件 163
9.3.2 图形编辑窗口简介 163
9.3.3 编辑图像 165
9.3.4 改变图像属性 169
9.3.5 选用不同的图像格式 170
9.4 如何调整图像颜色 171
9.4.1 彩色调色板 171
9.4.2 前景色和背景色的选择 171
9.4.3 填充图像的有边框区域 171
9.4.4 从图像中获取颜色并用于其他图像 172
9.4.5 反转选择框的颜色 172
9.4.6 自定义或改变颜色 172
9.4.7 保存或装载不同的彩色调色板 173
9.5 菜单编辑器的使用 173
9.5.1 创建菜单和菜单项 173
9.6 文本编辑器的使用 175
9.5.4 删除或拷贝菜单和菜单项 175
9.5.3 移动并拷贝菜单和菜单项 175
9.5.2 选择菜单和菜单项 175
9.6.1 语法的分色显示 176
9.6.2 设置语法分色 176
9.6.3 模拟流行编辑器 177
9.6.4 掌握文本的搜索方法 178
9.6.5 自定义编辑器环境 182
9.6.6 设置字体的风格、大小和颜色 184
第十章 Visual J++界面设计技术 186
10.1 了解构件布局 186
10.1.1 AWT中的构件介绍 186
10.1.2 容器介绍 187
10.1.3 一个例子 187
10.2.1 BorderLayout类 189
10.2 Java语言的布局管理类 189
10.2.2 FlowLayout类 190
10.2.3 CardLayout类 191
10.2.4 GridLayout类 193
10.2.5 GridBagLayout类和GridBagConstraints类 193
10.3 掌握Java程序的菜单设计方法 196
10.3.1 创建菜单系统 197
10.3.2 创建菜单系统举例 199
10.4 熟悉Java Resource Wizard工具 200
10.4.1 用Resource Wizard进行构件布局 201
10.4.2 用Resource Wizard实现菜单布局 216
第十一章 定制Developer Studio集成开发环境 221
11.1 掌握定制工具条的方法 221
11.1.1 显示和隐藏工具条 222
11.1.2 如何创建工具条 223
11.1.3 为定制的工具条改名 224
11.1.4 如何删除定制工具条 225
11.1.5 如何将工具条上的按钮分组 225
11.1.6 增加或删除工具条上的按钮 226
11.1.7 如何定制工具条上的菜单 227
11.2 掌握定制菜单和菜单项的方法 228
11.2.1 如何修改菜单的名字 228
11.2.2 如何增加菜单命令 228
11.2.3 如何从菜单中删除命令 229
11.2.4 如何恢复菜单中已经删除的缺省命令 229
11.3.1 如何改变工具条按钮的外观 230
11.3 熟悉Button Appearance对话框 230
11.2.5 如何恢复缺省菜单的初始设置 230
11.2.6 如何移动或拷贝菜单命令 230
11.3.2 如何改变菜单项的外观 232
11.4 掌握定制菜单Tools 的方法 233
11.4.1 如何为菜单Tools增加工具 233
11.4.2 如何编辑菜单Tools上的命令 234
11.4.3 如何从菜单Tools中删除工具 234
11.4.4 为菜单Tools的命令指定参数 234
11.5 如何定制键盘快捷键 235
第十二章 使重复性任务的操作自动化 237
12.1 使操作自动化的方法 237
12.2 熟悉VBScript宏 237
12.2.1 VBScript的基础知识 238
12.3.1 安装宏文件Sample 242
12.2.2 VBScript宏 242
12.3 如何安装运行VBScript宏 242
12.3.2 运行VBScript宏的方法 243
12.3.3 如何给宏赋予按钮或快捷键 243
12.4 如何录制VBScript宏 245
12.5 了解Developer Studio对象 247
12.5.1 Developer Studio对象简介 247
12.5.2 了解Developer Studio对象的事件 248
12.5.3 Developer Studio对象提供的方法 248
12.5.4 Developer Studio对象的属性概述 249
12.5.5 Developer Studio主要对象介绍 249
12.5.6 Developer Studio 的事件介绍 253
12.6 如何编写 VBScript宏 254
13.1 AWT类库概述 255
第十三章 AWT类库介绍 255
13.2 Visual J++ 构件类介绍 257
13.2.1 Label类 257
13.2.2 Button类 258
13.2.3 List类 260
13.2.4 TextComponent类、TextField类和TextArea类 263
13.2.5 Scrollbar类 266
13.2.6 Canvas类 270
13.2.7 Checkbox类和Checkbox Group类 270
13.2.8 Choice类 273
13.3 Visual J++容器类简介 275
13.3.1 Frame类 275
13.3.2 Panel类 278
13.3.3 Dialog类 281
13.3.4 FileDialog类 282
第十四章 Visual J++的图形设计功能 286
14.1 图形坐标系统简介 286
14.1.1 Graphics类的对象 286
14.1.2 Graphics类的坐标系统 286
14.2有关颜色和字体的类 286
14.2.1 Color类 287
14.2.2 Font类和FontMetric类 290
14.3 几种绘图方法的介绍 292
14.3.1 如何输出字符 293
14.3.2 如何画线 294
14.3.3 如何画矩形 295
14.3.4 如何画椭圆形 297
14.3.5 如何画圆弧 298
14.3.6 如何画多边形 299
14.3.7 如何复制图形 300
14.4 装载并显示图形的方法 301
14.4.1 如何装载图形 301
14.4.2 如何显示载入的图形 303
14.4.3 载入和显示图形的实例 303
第十五章 Visual J++多线程程序设计技术 306
15.1 多线程的概念 306
15.1.1 线程简介 306
15.1.3 何时使用多线程 307
15.1.4 使用多线程需要考虑的问题 307
15.1.2 使用多线程的优点 307
15.2 多线程程序实例 308
15.3 如何创建多线程 309
15.3.1 继承类Thread介绍 309
15.3.2 实现接口Runnable介绍 312
15.4 如何协调多线程资源共享 314
15.5 如何锁定资源 316
第十六章 如何实现动态效果和动画 318
16.1 如何产生移动字幕的效果 318
16.1.1 如何生成静态字幕 318
16.1.2 如何使字符串移动 319
16.1.3 使用线程实现动态效果 322
16.1.4 如何避免字幕移动时的闪烁 325
16.2.1 如何装载图片 327
16.2 实现动画技术 327
16.2.2 如何显示图片 328
16.2.3 动画程序实例 328
16.2.4 通过MediaTracker类跟踪图片的载入 330
16.2.5 如何给动画配音 331
16.3 使用双缓冲技术减轻闪烁 332
第十七章 Visual J++异常处理 336
17.1 异常的概念 336
17.1.1 什么是异常 336
17.1.2 异常发生的原因 337
17.1.3 编译时对异常情况的检查 337
17.1.4 异常的层次结构 337
17.1.5 Java定义的标准异常类 338
17.2 如何处理异常 339
17.3 如何创建自己的异常 341
第十八章 Cabinet文件与安全性问题 343
18.1深入了解Cabinet文件 343
18.1.1 Cabinet文件介绍 343
18.1.2 采用Cabinet文件的原因 343
18.2如何创建Cabinet文件 344
18.2.1 使用Diamond实用程序创建Cabinet文件 344
18.2.2 使用cabarc实用程序创建Cabinet文件 345
18.3 在HTML文件中运用Cabinet技术 347
18.4 何时需要使用cab文件 348
18.5 深入了解数字签名技术 348
18.5.1 背景 348
18.5.2 数字签名技术简介 348
18.5.4 了解证书授权机构 349
18.5.3 了解公用密钥证书 349
18.5.5 如何获得授权证书 350
18.6 在Visual J++中实现数字签名 350
18.6.1 了解Microsoft的信任码技术 350
18.6.2 MakeCert程序介绍 351
18.6.3 Cert2SPC程序介绍 351
18.6.4 SignCode程序介绍 352
18.6.5 PeSigMgr程序介绍 352
18.6.6 ChkTrust程序介绍 353
18.6.7 设计数字签名实例 353
第十九章 掌握Java+ActiveX技术 357
19.1用 VBScript语言控制Java Applet程序 357
19.1.1 编写可被VBScript语言访问的Applet程序 357
19.1.2 如何编写控制Applet程序的HTML文档 359
19.1.3 运行Applet程序 361
19.2 ActiveX构件的用法 361
19.2.1 ActiveX构件介绍 362
19.2.2 准备使用ActiveX构件 362
19.2.3 在Visual J++程序中使用ActiveX构件 365
19.2.4 考虑使用ActiveX构件的安全性问题 366
19.2.5 ActiveX构件应用实例 367
19.3 如何生成新的ActiveX构件 372
19.3.1 准备Java程序 372
19.3.2 用ActiveX Wizard for Java生成ActiveX构件 372
19.3.3 使用新创建的构件 374
20.1.2 Class Character 376
20.1.1 Class Boolean 376
第二十章 Visual J++类库介绍 376
20.1 Package java.lang Classes 376
20.1.3 Class Class 377
20.1.4 Class ClassLoader 378
20.1.5 Class Compiler 378
20.1.6 Class Double 378
20.1.7 Class Float 379
20.1.8 Class Integer 380
20.1.9 Class Long 381
20.1.10 Class Math 382
20.1.12 Class Object 383
20.1.11 Class Number 383
20.1.13 Class Process 384
20.1.14 Class Runtime 384
20.1.15 Class Security Manager 385
20.1.16 Class String 386
20.1.17 Class StringBuffer 387
20.1.18 Class System 389
20.1.19 Class Thread 390
20.1.20 Class ThreadGroup 391
20.1.21 Class Throwable 392
20.1.22 Interface Cloneable 392
20.1.25 Class ArrayIndex OutOfBoundsException 393
20.1.26 Class ArrayStoreException 393
20.1.24 Class ArithmeticException 393
20.1.23 Interface Runnable 393
20.1.27 Class ClassCastException 394
20.1.28 Class ClassNotFoundException 394
20.1.29 Class CloneNotSupportedException 394
20.1.30 Class Exception 394
20.1.31 Class IllegalAccess Exception 394
20.1.32 Class IllegalArgument Exception 395
20.1.33 Class IllegalMonitorStateException 395
20.1.34 Class Illegal ThreadStateException 395
20.1.35 Class IndexOutOfBoundsException 395
20.1.39 Class NoSuchMethodException 396
20.1.38 Class NegativeArraySizeException 396
20.1.37 Class Interrupted Exception 396
20.1.36 Class Instantiation Exception 396
20.2 Package java.io Classes 397
20.2.1 Class BufferedInput Stream 397
20.2.2 Class Buffered Output-Stream 397
20.2.3 Class ByteArrayInputStream 398
20.2.4 Class ByteArray Output-Stream 398
20.2.5 Class DataInputStream 399
20.2.6 Class DataOutputStream 400
20.2.7 Class File 400
20.2.8 Class FileDescriptor 401
20.2.9 Class FileInputStream 402
20.2.10 Class FileOutputStream 402
20.2.11 Class FilterInputStream 403