第一部分 面向对象程序设计 2
第1章 体验Java 2
1.1 作为通信系统的Internet 2
1.2 Web程序设计 3
1.2.1 用Java进行虚拟计算 3
1.2.2 为什么要用Java 4
1.3 面向对象程序设计 5
1.3.1 面向函数的程序 5
1.3.2 用对象进行程序设计 6
1.3.3 范例 7
1.4 展望 16
第2章 Java类设计 17
2.1 类 17
2.1.1 类语法 17
2.1.2 对象 19
2.1.3 重载 20
2.1.4 初始化函数和构造函数 22
2.1.5 终结函数 24
2.1.6 类和实例成员 25
2.1.7 常数 27
2.1.8 访问修饰符 28
2.2 继承 29
2.2.1 继承限定符 30
2.2.2 范例 30
2.3 界面 40
2.4 Microsoft Visual J++和类 43
2.5 均匀偏差:一个示例 46
2.6 一些面向对象的思想 56
2.7 展望 57
3.1 不同点 58
第3章 Java不是C++ 58
3.1.1 程序结构 59
3.1.2 类型 60
3.1.3 数组 62
3.1.4 串和字符 63
3.2 把C++程序转换成Java 67
3.2.1 分数 68
3.2.2 C++分数类 68
3.2.3 Java分数类 80
3.3 展望 88
4.1 问题 89
第4章 Java的实际应用 89
4.2 工具:遗传算法 90
4.3 初步设计 90
4.4 解决方案 92
4.4.1 染色体 92
4.4.2 轮盘 97
4.4.3 再生 101
4.4.4 变异 109
4.4.5 群体 114
4.5 GATest应用程序 117
4.6 展望 127
第二部分 面向组件的Java 130
第5章 Java和ActiveX 130
5.1 动态内容 130
5.1.1 历史 130
5.1.2 进入ActiveX 131
5.1.3 COM基础 131
5.2 连接动态内容和Java 133
5.2.1 Visual Basic,脚本编辑和Java小程序 133
5.2.2 在Java下使用COM对象 134
5.2.3 ActiveX控件和Java 138
5.3 范例 139
5.3.1 控件 140
5.3.2 Web页 140
5.3.3 Java小程序 142
5.4 展望 148
第6章 了解COM和Java 149
6.1 COM的基础知识 149
6.1.1 界面和类标志符 151
6.1.2 Java对COM对象的访问 151
6.1.3 IUnknown 152
6.2 界面定义 154
6.2.1 类型库 154
6.2.2 IDL文件 154
6.3 关于界面的更多说明 161
6.3.1 引用计数 161
6.3.2 对象一致性 162
6.3.3 属性 162
6.3.4 聚集 162
6.4 展望 165
7.1 COM替代物 166
第7章 用Java创建COM对象 166
7.2 把Java小程序转换为COM 176
7.3 使用一个Java COM类 183
7.4 展望 185
第8章 Java Bean 186
8.1 Bean的定义 186
8.1.1 一个基本的Bean 186
8.1.2 生成一个JAR 188
8.2.1 事件示例 189
8.2 事件 189
8.1.3 生成一个好的Bean 189
8.2.2 事件模型的比较 190
8.3 属性 191
8.3.1 边界属性 191
8.3.2 受约束属性 192
8.4 Slideshow Bean 194
8.5 作为ActiveX控件的Bean 205
8.6 展望 211
9.1.1 Component父类 214
9.1 AWT组件体系 214
第三部分 应用Java 214
第9章 抽象窗口工具箱 214
9.1.2 Container子类 218
9.1.3 Canvas子类 220
9.1.4 Button子类 220
9.1.5 Checkbox子类 221
9.1.6 Label子类 222
9.1.7 TextArea子类 222
9.1.8 List子类(列表框) 224
9.1.9 Choice子类(组合框) 226
9.2.1 BorderLayout 227
9.2 布局 227
9.2.2 FlowLayout 228
9.2.3 GridLayout 228
9.3 实用类型 229
9.3.1 颜色 229
9.3.2 字体 230
9.3.3 字体规格 231
9.4 展望 232
第10章 用户界面设计要素 233
10.1 坐标变换 233
10.2.2 窗口 234
10.2 窗格、窗口和图文框 234
10.2.1 窗格 234
10.2.3 图文框 235
10.3 标准事件 236
10.3.1 Action事件 237
10.3.2 Component事件 237
10.3.3 Container事件 238
10.3.4 Item事件 238
10.3.5 Key事件 239
10.3.6 Mouse事件 240
10.3.7 Window事件 243
10.4 菜单 245
10.5 展望 252
第11章 安全和认证码 253
11.1 Java sandbox 253
11.2 ActiveX和Internet Explorer 254
11.3 代码签名 256
11.3.1 证书类型 259
11.3.2 Cabinet(CAB)文件 260
11.4 展望 261
12.1 更多的颜色 262
第12章 构造组件 262
12.2 分隔条 264
12.3 有边界的窗格 266
12.4 展示框架 267
12.5 固定堆栈 268
12.6 检查框列 271
12.7 单元窗格 275
12.8 展望 283
13.1 人工生命 284
13.2.1 Life游戏 285
13.2 细胞自动机 285
13.2.2 思维 288
13.2.3 一般的自动机 289
13.2.4 拓扑构形 289
13.3 LifeBox应用程序 289
13.3.1 自动机 290
13.3.2 自动机规则 298
13.3.3 LifeBox 306
13.4 展望 328
附录A Java1.1中不推荐的方法 329
附录B 在Microsoft Visual J++1.1中使用Microsoft Java SDK 2.0 332