第1章 Visual J#.NET 1
1.1 背景知识 1
1.2 .NET论述 3
1.2.1 .NET Framework 4
1.2.2 C 6
1.2.3 .NET企业服务器 6
1.2.4 构建模块化的.NET服务 7
1.2.5 比较.NET和J2EE 7
1.3 VJ#.NET出现的原因 8
1.4 J#特征 10
1.4.1 通用类型系统 10
1.4.2 System类 11
1.4.3 命名空间 12
1.4.4 程序集 13
1.4.5 ASP.NET 13
1.4.6 AD0.NET 13
1.5 Visual Studio .NET 14
1.5.1 可获得的软件 14
1.5.2 不使用VS.NET的J 14
1.5.3 使用Visual Studio .NET 16
1.5.4 升级为J 17
1.6 小结 17
第2章 J#语言 19
2.1 公共语言规范 20
2.2 词法结构 20
2.2.1 用作标识符的关键字 20
2.2.2 标识符语法 21
2.2.3 大小写无关的标识符 21
2.3 类型 22
2.3.1 基本数据类型 22
2.3.2 枚举 31
2.3.3 字符串和字符 32
2.3.4 数组 37
2.4 面向对象编程 41
2.4.1 类 42
2.4.2 接口 42
2.4.3 概念模型 43
2.4.4 重载与重写 48
2.4.5 J#对内部类的支持 49
2.4.6 java.lang.0bject 50
2.5 语句 55
2.5.1 程序块 56
2.5.2 控制语句 56
2.5.3 变量声明 58
2.5.4 赋值操作 59
2.5.5 方法调用 59
2.5.6 异常 60
2.6 多线程 69
2.6.1 synchronized关键字 69
2.6.2 wait()和notify()方法 70
2.6.3 死锁 73
2.6.4 volatile关键字 74
2.6.5 与C#语法和.NET的关系 76
2.7 属性 79
2.7.1 J#的处理方式 80
2.7.2 在J#中实现属性 80
2.7.3 索引器 81
2.8 委托与事件 83
2.8.1 委托 83
2.8.2 事件 88
2.9 串行化 91
2.9.1 JDKl.1.4和Java 2的兼容性 91
2.9.2 与.NET串行化的互操作性 91
2.10 包、命名空间和程序集 92
2.11 预处理程序 93
2.12 小结 94
第3章 J#和类库 95
3.1 使用J#类库 96
3.1.1 测试对Java类的支持 97
3.1.2 不受支持的类库和API 107
3.2 使用.NET类库 110
3.2.1 导入命名空间 110
3.2.2 使用.NET类库的局限性 111
3.3 使用用户定义的.NET类库 114
3.4 使用COMInterop 116
3.5 J#不具备VisualJ++ 6.0的哪些功能 120
3.6 小结 120
第4章 Windows应用程序 121
4.1 .NET类(System.Windows) 121
4.2 System.Windows.Forms.Form类 121
4.3 使用J#和VS.NET的Windows应用程序 122
4.4 添加窗体组件 123
4.5 控件 127
4.5.1 .NET控件 127
4.5.2 JavaAWT控件(java.awt) 130
4.6 布局管理器 130
4.6.1 Java方法 131
4.6.2 .NET方式 132
4.7 事件处理程序 133
4.7.1 .NET模型 133
4.7.2 Java委托模型 134
4.8 混合使用.NET和Java代码 135
4.8.1 基于.NET的窗体 135
4.8.2 基于Java AWT的窗体 136
4.8.3 运行应用程序 137
4.8.4 讨论 137
4.9 继承Form 138
4.9.1 类示意图 138
4.9.2 定义基本窗体 139
4.9.3 扩充窗体 140
4.9.4 主应用程序窗体 142
4.9.5 讨论 144
4.10 基于GUI的地址簿J#应用程序 144
4.10.1 创建应用程序项目 145
4.10.2 提供数据库支持 145
4.10.3 创建数据库 145
4.10.4 添加应用程序功能 150
4.10.5 添加按钮事件处理程序 152
4.10.6 构建并运行项目 156
4.11 小结 156
第5章 使用J#进行ASP.NET编程 157
5.1 ASP.NET的功能 157
5.1.1 增强的浏览器无关性 157
5.1.2 支持面向对象的语言 158
5.1.3 服务器端控件 160
5.1.4 更好的工具支持 160
5.1.5 从页面代码中分离HTML 160
5.2 ASP.NET编程模型 160
5.3 Web Form结构 162
5.4 第一个ASP.NET页面 164
5.4.1 创建一个Web项目 164
5.4.2 向导生成的文件 165
5.4.3 查看VS.NET生成的代码 166
5.4.4 开发用户界面 169
5.4.5 编写后台代码 170
5.4.6 运行应用程序 171
5.4.7 与JSP作比较 172
5.5 Web Form控件 173
5.5.1 服务器端控件 173
5.5.2 功能丰富的控件 174
5.5.3 验证控件 178
5.6 开发一个ASP.NET应用程序 181
5.6.1 创建数据库 181
5.6.2 创建项目 181
5.6.3 运行应用程序 190
5.7 小结 191
第6章 使用J#创建Web服务 192
6.1 Web服务概述 192
6.2 Web服务 193
6.3 Web服务的体系结构 194
6.4 web服务的类型 195
6.5 Web服务技术 195
6.5.1 SOAP 196
6.5.2 带有附件的SOAP消息(SwA) 198
6.5.3 WSDL 199
6.5.4 UDDl 201
6.5.5 ebXML 202
6.6 使用VS.NET创建Web服务 203
6.6.1 创建项目 203
6.6.2 向导生成的文件 204
6.6.3 数据库 206
6.6.4 修改ASMX文件 206
6.6.5 运行Web服务 208
6.6.6 讨论 210
6.7 使用VS.NET创建Web服务的客户应用程序 210
6.7.1 项目 210
6.7.2 用户界面 212
6.7.3 代码 212
6.7.4 运行客户应用程序 213
6.8 "Best Bargain Service" Web服务 213
6.8.1 小型的Web服务 214
6.8.2 集成的大型Web服务 215
6.8.3 运行应用程序 219
6.8.4 讨论 220
6.9 目前版本的局限性 220
6.10 小结 220
第7章 迁移问题 221
7.1 迁移WFC 221
7.2 jbimp转换工具 224
7.3 迁移RMI和JDBC 225
7.4 从RMI到.NET System.Runtime.Remoting 232
7.5 小结 240
附录 客户支持和代码下载 241