作者: (美)Donis Marshall [作译者介绍]
译者: 施平安 王净 蔡兴泉
丛书名: 微软技术丛书
出版社:清华大学出版社
目录回到顶部↑
第i部分 核心语言.
第1章 visual c#编程简介 3
1.1 visual c# 2008编程示例 4
1.1.1 c#示例程序 4
1.1.2 linq示例程序 6
1.2 visual c# 2008程序的公共要素 8
1.2.1 命名空间 8
1.2.2 main入口点 12
1.2.3 局部变量 13
1.2.4 可空类型 13
1.2.5 表达式 14
1.2.6 选择语句 15
1.2.7 迭代语句 17
1.3 c#核心语言特征 20
1.3.1 符号和标记 20
1.3.2 标识符 36
1.3.3 关键字 36
1.3.4 基元 39
1.4 类型预览 40
第2章 类型 41
.2.1 类 41
2.1.1 类的成员 43
2.1.2 成员函数 48
2.2 结构 67
2.3 枚举 68
2.4 等值与标识 70
2.5 继承预览 71
第3章 继承 72
3.1 继承示例 73
3.2 system.object 76
3.2.1 object.equals方法 77
3.2.2 object.gethashcode方法 78
3.2.3 object.gettype方法 78
3.2.4 object.tostring方法 79
3.2.5 object.memberwiseclone方法 79
3.2.6 object.referenceequals方法 80
3.3 employee类 81
3.4 实现继承 82
3.5 重写继承的行为 83
3.5.1 virtual和override关键字 84
3.5.2 重载与重写 84
3.5.3 重写事件 85
3.5.4 扩展方法 86
3.6 new修饰符 87
3.7 抽象类 90
3.8 密封类 92
3.9 构造函数和析构函数 92
3.10 接口 95
3.10.1 实现接口 97
3.10.2 显式接口成员实现 98
3.10.3 接口的再实现 101
3.11 多态性 103
3.11.1 接口多态性 106
3.11.2 new修饰符和多态性 107
3.12 强制类型转换 108
3.13 属性继承 112
3.14 visual studio 2008预览 113
第ii部分 核心技术
第4章 visual studio 2008简介 117
4.1 迁移到visual studio 2008 117
4.2 集成开发环境 119
4.2.1 起始页 119
4.2.2 创建项目 120
4.2.3 多目标 120
4.2.4 解决方案资源管理器 121
4.2.5 项目类型 123
4.2.6 添加引用 123
4.2.7 visual studio中的窗口管理 124
4.2.8 自动恢复 125
4.3 类层次结构 125
4.3.1 “类视图”窗口 126
4.3.2 对象浏览器 127
4.3.3 类关系图 127
4.3.4 “错误列表”窗口 136
4.4 代码编辑器 137
4.4.1 intellisense 137
4.4.2 外侧代码 138
4.4.3 字体和颜色格式化 138
4.4.4 源代码格式设置 139
4.4.5 修改跟踪 139
4.5 代码段 140
4.5.1 插入代码段 140
4.5.2 默认的代码段 142
4.5.3 代码段管理器 143
4.5.4 创建代码段 144
4.5.5 复制和粘贴 149
4.6 重构 149
4.7 生成和部署 153
4.7.1 msbuild 154
4.7.2 clickonce部署 158
4.8 数组和集合预览 163
第5章 数组和集合 165
5.1 数组 167
5.1.1 数组元素 168
5.1.2 多维数组 169
5.1.3 交错数组 171
5.1.4 system.array 172
5.1.5 system.array属性 179
5.1.6 params关键字 185
5.1.7 数组转换 187
5.2 集合 188
5.2.1 arraylist集合 189
5.2.2 bitarray集合 192
5.2.3 hashtable集合 194
5.2.4 queue集合 198
5.2.5 sortedlist 199
5.2.6 stack集合 202
5.2.7 专用集合 203
5.3 linq预览 204
第6章 linq简介 205
6.1 c#扩展 206
6.1.1 类型推断 206
6.1.2 对象初始值设定项 207
6.1.3 匿名类型 207
6.1.4 扩展方法 208
6.1.5 lambda表达式 208
6.1.6 表达式目录树 209
6.2 linq基础 210
6.2.1 核心要素 210
6.2.2 转换运算符 213
6.2.3 linq查询表达式语法 214
6.2.4 linq在哪里 215
6.3 linq to objects 216
6.4 linq运算符 219
6.4.1 聚合运算符 219
6.4.2 连接运算符 220
6.4.3 数据类型转换运算符 220
6.4.4 元素运算符 222
6.4.5 等于运算符 223
6.4.6 筛选运算符 223
6.4.7 生成运算符 223
6.4.8 分组运算符 224
6.4.9 联接运算符 224
6.4.10 分区运算符 225
6.4.11 量词运算符 226
6.4.12 集合运算符 226
6.4.13 排序运算符 227
6.5 泛型预览 228
第7章 泛型 229
7.1 泛型类型 231
7.1.1 类型形参 232
7.1.2 类型实参 232
7.1.3 构造类型 235
7.1.4 重载方法 236
7.2 泛型方法 237
泛型类型的this引用 238
7.3 约束 238
7.3.1 派生约束 239
7.3.2 接口约束 243
7.3.3 值类型约束 244
7.3.4 引用类型约束 245
7.3.5 默认的构造函数约束 246
7.4 强制类型转换 246
7.5 继承 247
7.5.1 重写泛型方法 248
7.5.2 嵌套类型 249
7.6 静态成员 250
7.6.1 运算符函数 251
7.6.2 序列化 252
7.6.3 泛型本质 254
7.6.4 泛型集合 255
7.7 枚举器预览 256
第8章 枚举器 257
8.1 可枚举的对象 258
8.1.1 枚举器 258
8.1.2 枚举器实例 260
8.1.3 枚举器实例(版本化集合) 261
8.1.4 ienumerator问题 263
8.2 泛型枚举器 263
8.2.1 ienumerable[t]接口 264
8.2.2 ienumerator[t]接口 264
8.2.3 泛型枚举器实例(版本化集合) 265
8.3 迭代器 267
8.4 运算符重载预览 274
第iii部分 c#语言详解
第9章 运算符重载 277
9.1 数学运算符和逻辑运算符 278
9.1.1 实现 279
9.1.2 自增和自减运算符 281
9.1.3 左移和右移运算符.. 282
9.1.4 true和false运算符 283
9.1.5 成对运算符 284
9.2 转换运算符 288
9.3 实例 291
9.4 运算符重载的本质 294
9.5 委托和事件预览 296
第10章 委托和事件 297
10.1 委托 297
10.1.1 定义委托 298
10.1.2 创建委托 299
10.1.3 逆变和协变 300
10.1.4 激活委托 300
10.1.5 委托数组 301
10.1.6 system.multicastdelegate类 302
10.1.7 调用列表 303
10.1.8 泛型和委托 306
10.1.9 异步调用 307
10.1.10 异步委托图 310
10.1.11 异常 311
10.2 匿名方法 312
10.2.1 外部变量 314
10.2.2 泛型匿名方法 316
10.2.3 匿名方法的局限性 316
10.3 事件 317
10.3.1 发布事件 317
10.3.2 订阅者 318
10.3.3 引发事件 318
10.4 linq编程预览 320
第11章 linq编程 321
11.1 linq to xml 321
11.1.1 xml架构 322
11.1.2 验证 322
11.1.3 导航 323
11.1.4 显式的强制类型转换 327
11.1.5 xml修改 328
11.1.6 xml查询表达式 330
11.2 linq to sql 331
11.2.1 实体类 331
11.2.2 linq to sql查询表达式 333
11.2.3 linq to dataset 334
11.2.4 关联 335
11.2.5 linq to sql更新 337
11.3 异常处理预览 339
第12章 异常处理 340
12.1 异常示例 340
12.2 标准异常模型 341
12.3 结构化异常处理 342
12.3.1 try语句 342
12.3.2 catch语句 343
12.3.3 异常的传播 344
12.3.4 finally语句 346
12.3.5 异常信息表 346
12.3.6 嵌套的try块 347
12.4 system.exception 348
12.4.1 system.exception函数 349
12.4.2 system.exception属性 350
12.4.3 应用程序异常 351
12.4.4 异常转换 353
12.4.5 com互操作性异常 353
12.5 远程异常 357
12.6 未处理的异常 358
12.6.1 application.threadexception 360
12.6.2 appdomain.unhandledexception 360
12.7 在visual studio中管理异常 361
12.7.1 异常助手 362
12.7.2 “异常”对话框 362
12.8 元数据和反射预览 363
第iv部分 调试
第13章 元数据和反射 367
13.1 元数据 367
13.1.1 元数据标记 369
13.1.2 元数据堆 369
13.1.3 流 370
13.1.4 元数据验证 370
13.1.5 ildasm 371
13.2 反射 375
13.2.1 获得type对象 376
13.2.2 加载程序集 378
13.2.3 浏览类型信息 380
13.2.4 动态调用 383
13.2.5 类型的创建 387
13.2.6 晚期绑定委托 389
13.2.7 函数调用性能 391
13.3 反射和泛型 391
13.3.1 isgeneric和isgenerictypedefinition 392
13.3.2 typeof 393
13.3.3 gettype 393
13.3.4 getgenerictypedefinition 394
13.3.5 getgenericarguments 394
13.3.6 创建泛型类型 395
13.3.7 反射的安全性 396
13.3.8 属性 397
13.3.9 程序员定义的自定义属性 399
13.3.10 属性和反射 403
13.4 msil预览 405
第14章 msil编程 406
14.1 “hello world”应用程序 408
14.2 计算堆栈 409
14.3 msil详解 410
14.4 复杂任务 419
14.5 分支 424
14.6 数组 428
14.7 算术指令 430
14.8 转换运算 430
14.9 异常处理 431
14.10 其他操作 432
14.11 进程执行 432
14.12 用visual studio 2008进行调试预览 436
第15章 用visual studio 2008进行调试 437
15.1 调试概述 438
15.1.1 调试windows窗体项目 438
15.1.2 附加到运行进程 438
15.1.3 调试控制台应用程序项目 440
15.1.4 调试类库项目 440
15.2 调试配置 441
15.2.1 debug和release配置 441
15.2.2 配置管理器 441
15.3 调试设置 442
15.3.1 visual studio环境调试设置 442
15.3.2 解决方案的调试设置 447
15.3.3 项目的调试设置 448
15.4 断点 449
15.4.1 函数断点 449
15.4.2 “断点”窗口 450
15.4.3 跟踪点 454
15.5 代码逐步调试 456
15.5.1 逐步调试命令 456
15.5.2 “设置下一条语句”实例 456
15.6 “调试”工具栏 457
15.7 数据提示 458
15.8 调试窗口 460
15.8.1 “断点”窗口 460
15.8.2 “输出”窗口 460
15.8.3 “监视”窗口和其他变量窗口 461
15.8.4 自动窗口 463
15.8.5 “局部变量”窗口 463
15.8.6 “即时”窗口 463
15.8.7 “调用堆栈”窗口 466
15.8.8 “线程”窗口 467
15.8.9 “模块”窗口 468
15.8.10 “进程”窗口 468
15.8.11 “内存”窗口 469
15.8.12 “反汇编”窗口 469
15.8.13 “寄存器”窗口 470
15.9 跟踪 471
15.9.1 跟踪实例 478
15.9.2 配置文件 481
15.9.3 使用配置文件进行跟踪的示例 482
15.10 debuggerdisplayattribute 484
15.11 debuggerbrowsableattribute 486
15.12 debuggertypeproxyattribute 488
15.13 转储文件 488
15.14 高级调试预览 490
第16章 高级调试 491
16.1 debuggableattribute属性 492
16.2 调试器 493
16.3 托管调试器(mdbg) 493
16.3.1 mdbg实例 494
16.3.2 mdbg命令 497
16.4 windbg 499
16.5 son of strike(sos) 505
16.5.1 sos实例——第1部分 506
16.5.2 sos实例——第2部分 508
16.6 转储文件 510
16.7 内存管理 512
16.7.1 对象图 513
16.7.2 代 515
16.7.3 终结进程 519
16.7.4 可靠性和性能监视器 519
16.8 线程 520
16.9 异常 526
16.10 符号 527
16.10.1 symsrv符号服务器 528
16.10.2 应用程序符号 529
16.11 内存管理预览 529
第v部分 高级特性
第17章 内存管理 533
17.1 非托管资源 534
17.1.1 垃圾回收概述 535
17.1.2 gc风格 538
17.2 终结器 539
17.3 idisposable.dispose 551
17.3.1 disposable模式 554
17.3.2 disposable模式的考虑因素 555
17.4 弱引用 560
17.4.1 弱引用内部机理 562
17.4.2 weakreference类 563
17.4.3 可靠的代码 563
17.4.4 管理非托管资源 566
17.5 gc类 569
17.6 不安全的代码预览 569
第18章 不安全的代码 570
18.1 unsafe关键字 572
18.1.1 指针 573
18.1.2 指针参数和指针返回值 575
18.1.3 p/invoke 578
18.2 小结 590
索引... 591
1