图书介绍
C#技术揭秘2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

- (美)Tom Archer,(美)Andrew Whitechapel著;马朝晖等译 著
- 出版社: 北京:机械工业出版社
- ISBN:7111122577
- 出版时间:2003
- 标注页数:597页
- 文件大小:61MB
- 文件页数:619页
- 主题词:C语言-程序设计
PDF下载
下载说明
C#技术揭秘PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
目录译者序序一序二前言第一部分C#类的基本原理第1章 建立C#应用程序和库2
1.1 “Hello,World”——命令行版本2
1.2 “Hello,World”的代码解释4
1.2.1一站式编程4
1.2.2名称空间4
1.2.3类和成员6
1.2.4 Main方法6
1.2.5 System.Console.WriteLine方法7
1.2.6名称空间和using指令7
1.2.7框架代码8
1.2.8类的二义性9
1.3“Hello,World”——Visual Studio.NET版本10
1.4编译和运行.NET应用程序11
1.5 “Hello,World”内部13
1.6配件和模块16
1.6.1配件概述16
1.6.2配件的好处17
1.6.3构建配件18
1.6.4创建共享配件21
1.6.5使用全局配件缓存23
1.7小结24
第2章 .NET类型系统25
2.1所有东西都是对象25
2.2.1值类型27
2.2值类型和引用类型27
2.3装箱和拆箱28
2.2.2引用类型28
2.3.1将值类型转换为引用类型29
2.3.2将引用类型转换为值类型29
2.3.3更多的装箱例子30
2.4类型和别名34
2.5类型之间的转换34
2.6 CTS的好处36
2.6.1语言互操作性36
2.6.3类型安全37
2.7小结37
2.6.2单根的对象层次结构37
第3章 类和结构38
3.1定义类38
3.2类成员39
3.3访问修饰符40
3.4 Main方法41
3.4.1命令行参数41
3.4.2从Main方法返回值42
3.4.3多个Main方法43
3.5构造器44
3.5.1静态成员和实例成员46
3.5.2构造器初始化器47
3.5.3在构造器初始化器中指定运行时信息51
3.6常量与只读字段54
3.6.1常量54
3.6.2只读字段54
3.7继承57
3.7.1多个接口59
3.7.2封闭的类60
3.8在C#中定义结构61
3.8.1结构的使用61
3.8.2使用结构的原则63
3.9小结65
4.1值和引用参数66
第4章 方法66
4.1.1 ref方法参数67
4.1.2 out方法参数70
4.2再论值和引用参数73
4.3方法重载77
4.3.1重载构造器79
4.3.2继承与重载81
4.4可变的方法参数82
4.5虚拟方法85
4.5.1方法重定义85
4.5.2多态性86
4.5.3 new和虚拟方法91
4.5.4从构造器调用虚拟方法93
4.6静态方法95
4.6.1访问类成员96
4.6.2静态构造器97
4.7小结98
第5章 特性、数组和索引器99
5.1特性是灵巧字段99
5.1.1定义和使用特性100
5.1.2特性的内幕101
5.1.3继承特性104
5.1.4特性的高级用途108
5.2数组109
5.2.1声明数组109
5.2.2一维数组示例110
5.2.3多维数组111
5.2.4查询秩112
5.2.5锯齿形数组113
5.3使用索引器像对待数组那样对待对象115
5.3.1定义索引器115
5.3.2索引器例子116
5.3.3索引器的内幕117
5.3.4设计原则118
5.4小结119
第6章 属性120
6.1属性简介120
6.2定义属性121
6.3.1类属性124
6.3查询属性124
6.3.2方法属性126
6.3.3字段属性128
6.4属性参数129
6.4.1位置参数和命名参数130
6.4.2使用命名过的参数时的常见错误131
6.4.3有效的属性参数类型132
6.5 AttributeUsage属性132
6.5.1定义属性目标132
6.5.2单次使用和多次使用的属性134
6.5.3指定属性继承规则134
6.6属性标识符136
6.7预定义的属性138
6.7.1 Conditional属性139
6.7.2 Obsolete属性141
6.7.3 CLSCompliant属性141
6.7.4 Dlllmport和StructLayout属性142
6.7.5配件属性144
6.8上下文属性144
6.9小结150
第7章 接口151
7.1接口的用途151
7.2声明接口152
7.3实现接口153
7.3.1使用is查询实现155
7.3.2使用as查询实现158
7.3.3接口与替代技术161
7.4显式地限定接口成员名163
7.4.1用接口进行名称隐藏163
7.4.2避免名称的二义性165
7.5接口与继承169
7.6组合接口172
7.7小结173
第二部分编写代码第8章 表达式和操作符176
8.1操作符的定义176
8.2操作符的优先级176
8.2.2左结合性和右结合性177
8.2.1 c#如何决定优先级177
8.2.3实际使用178
8.3 c#操作符178
8.3.1基本表达式操作符179
8.3.2算术操作符183
8.4数值转换190
8.5位操作符193
8.6关系操作符196
8.7简单赋值操作符197
8.8条件操作符200
8.9小结202
9.1选择语句203
9.1.1 if语句203
第9章 程序流控制203
9.1.2 switch语句207
9.2迭代语句214
9.2.1 while语句214
9.2.2 do/while语句215
9.2.3 for语句217
9.2.4 foreach语句220
9.3使用跳转语句进行分支223
9.3.1 break语句223
9.3.2 continue语句225
9.3.3声名狼藉的goto语句227
9.3.4 return语句232
9.4小结233
第10章 字符串处理和正则表达式234
10.1字符串234
10.1.1字符串的格式化236
10.1.2格式指定符238
10.1.3对象和ToString240
10.1.4数字字符串分析241
10.1.5字符串和DateTime243
10.1.6字符串的编码方式245
10.1.7 StringBuilder类246
10.1.8分解字符串247
10.1.9扩展字符串248
10.1.10字符串扣留249
10.2正则表达式251
10.2.1 Match和MatchCollection254
10.2.2组和捕获257
10.2.3字符串-修改表达式258
10.2.4正则表达式选项261
10.2.5编译正则表达式262
10.3小结265
第11章 用流进行文件I/O266
11.1 流类266
11.1.1 FileStream267
11.1.2 StreamReader和StreamWriter269
11.1.3内存和缓冲流271
11.1.4字符串读取器和写出器274
11.1.5二进制读取器和写出器275
11.2文件系统类277
11.2.1 Directory和DirectoryInfo277
11.2.2 File和FileInfo279
11.2.3分析路径281
11.3流的非控制台使用方式282
11.3.1 Windows OpenFileDialog282
11.3.2读取Web页面283
11.4串行化284
11.4.1使用BinaryFormatter进行串行化285
11.4.2使用SoapFormatter287
11.4.3使用XmlSerializer进行串行化288
11.4.4实现ISerializable289
11.5小结291
第12章 用异常进行错误处理292
12.1异常处理概述292
12.2基本的异常处理语法293
12.2.1抛出异常293
12.2.2捕获异常294
12.2.3重新抛出一个异常296
12.2.4使用finally进行清理298
12.3重试代码301
12.4错误处理技术的比较303
12.4.1异常处理相对于返回编码的好处303
12.4.2在正确的上下文中处理错误305
12.4.3提高代码的可读性306
12.4.4从构造器抛出异常307
12.5使用System.Exception类307
12.5.1构造一个Exception对象307
12.5.2使用StaekTrace特性310
12.5.3捕获多个异常类型311
12.5.4派生自己的Exception类312
12.6用异常处理设计代码314
12.6.1 try块的设计问题314
12.6.2 catch块的设计问题317
12.7小结319
13.1操作符重载320
13.1.1操作符重载的语法320
第13章 操作符重载和用户定义的转换320
13.1.2操作符重载的规则和限制321
13.1.3操作符重载示例322
13.1.4 RGB颜色递增示例324
13.1.5操作符重载的设计方针328
13.2用户定义的转换330
13.2.1用户定义的转换语法330
13.2.2用户定义的转换的规则和限制330
13.2.3用户定义的转换示例331
13.3小结341
第14章 委托和事件处理器342
14.1将委托作为回调方法使用342
14.2委托的内幕344
14.3将委托定义为静态成员347
14.4只在需要时创建委托349
14.5多点委托351
14.6使用多点委托定义事件359
14.7小结362
第15章 使用XML进行文档记录363
15.1入门363
15.1.1添加元素365
15.1.2可以接受注释的代码构造365
15.2编译器产生的元素ID365
15.2.1字段、特性、事件和索引器366
15.2.2方法368
15.3 良构的XML372
15.4注释网页373
15.5元素标记和属性374
15.5.1〈exception〉标记和cref属性375
15.5.2 〈c〉、〈code〉和〈example〉标记375
15.5.3〈include〉标记376
15.5.4 〈list〉标记378
15.6定制的格式化379
15.7 XML与数据381
15.8 小结382
第三部分高级C#第16章 数值处理和Marh类384
16.1 C#和.NET中的数值支持384
16.1.1 Decimal类型是原始的类型吗385
16.1.2数值后缀386
16.1.3数值类型的各种名称387
16.1.4数值字面值388
16.2整数范围和溢出规则390
16.3 Decimal类型394
16.4 System.Math类394
16.4.1 System.Math常量394
16.4.2处理数值的正负号394
16.4.3最小值和最大值395
16.4.4用于取整和截短的方法395
16.5小结396
17.1实现枚举接口397
第17章 集合和对象枚举397
17.1.1使用枚举器对象400
17.1.2使用foreach语句处理集合401
17.2为什么需要两个接口403
17.3构造枚举器对象403
17.4创建具有版本的枚举器404
17.5将IEnumerable和IEnumerator合并407
17.6在允许枚举时保护数据409
17.7值类型411
17.7.1性能问题412
17.7.2修改值类型的集合数据419
17.8小结422
18.1线程入门423
第18章 多线程和异步编程423
18.2线程处理的基本知识424
18.2.1创建线程和Thread对象424
18.2.2管理线程的生存周期424
18.2.3销毁线程426
18.2.4对线程进行调度428
18.3与线程进行数据通信432
18.4线程安全和同步434
18.4.1使用Monitor类保护代码434
18.4.2通过C#lock语句使用监视锁440
18.4.3使用Mutex类对代码进行同步441
18.5使用委托调用异步方法443
18.7.1何时应该使用线程447
18.6线程安全和.NET类447
18.7线程方针447
18.7.2何时不应该使用线程448
18.8小结449
第19章 利用反射查询元数据450
19.1 ReflectionAPI层次结构450
19.2rype类450
19.3获得Type引用450
19.3.1获取一个实例的类型451
19.3.2从名称获取类型451
19.3.3查询类型452
19.4.1遍历配件的类型455
19.4处理配件和模块455
19.4.2列出配件的模块459
19.5使用反射进行晚绑定461
19.6使用反射实现抽象工厂463
19.7动态地生成代码465
19.8小结468
第20章 固定和内存管理469
20.1垃圾收集469
20.2重定义Finalize470
20.3强行进行垃圾收集474
20.4 Dispose模式476
20.5 IDisposable接口479
20.5.1派生的可处置类481
20.5.2防止重复处置482
20.5.3对Dispose的语言支持483
20.6垃圾收集器代484
20.7弱引用486
20.8不安全的代码487
20.9固定490
20.9.1固定数组元素492
20.9.2间接引用成员操作符495
20.9.3使用stackalloc496
20.10 小结498
第21章 从C#应用程序使用COM499
21.1 COM在当今的.NET环境中处于什么位置499
21.2.1创建ATL组件500
21.2从C#使用COM组件500
21.2.2从.NET应用程序使用COM组件501
21.2.3绑定和使用COM组件502
21.2.4使用COM组件进行动态类型发现504
21.2.5对COM对象进行晚绑定505
21.3事件处理507
21.3.1 COM连接点的工作原理507
21.3.2创建一个产生事件的ATLCOM组件508
21.3.3使用委托进行事件处理510
21.3.4在.NET应用程序中接收非托管的COM事件512
21.4使用COM集合515
21.4.1使用ATL创建COM集合对象515
21.4.2在.NET应用程序中使用COM集合519
21.4.3遍历.NET集合中的元素520
21.5在托管代码中重用COM组件522
21.5.1包含522
21.5.2聚合522
21.5.3通过混合模式的继承进行重用523
21.5.4通过混合模式的包含进行重用526
21.5.5NET对COM线程模型和场所的感知527
21.6将方法关键字映射到IDL属性528
21.7小结529
第22章 在非托管代码中使用.NET组件530
22.1通过COM创建和使用.NET组件530
22.1.1从配件产生类型库和注册配件531
22.1.2从Visual Basic 6客户使用组件532
22.1.3 COM interop的内部机理533
22.1.4探究产生的类型库534
22.2使用属性影响产生的类型库元数据540
22.2.1修改接口类型540
22.2.2修改GUID和ProgID542
22.2.3对COM隐藏公共类型543
22.2.4修改类型的编组行为544
22.3异常处理:.NET与COM544
22.4在非托管事件接收器中处理来自.NET组件的事件546
22.4.1创建产生事件的.NET组件547
22.4.2在Visual Basic客户应用程序中处理事件549
22.5.NET组件中的线程从属关系550
22.6小结555
第23章 安全性556
23.1.NET安全性556
23.2可检验的类型安全557
23.3代码签名561
23.3.1私有配件561
23.3.2强名称配件563
23.3.3全局配件缓存566
22.3.4延迟签名配件568
23.4密码服务569
23.5.1证据571
23.5代码访问安全性571
23.5.2安全策略572
23.5.3配置安全575
23.5.4 CASpol579
23.5.5强制式和声明式CAS581
23.5.6标识权限582
23.5.7配件权限请求584
23.6基于角色的安全585
23.6.1 PrincipalPermission请求587
23.6.2模仿588
23.7隔离的存储589
23.8小结590
附录A MSIL指令表592
热门推荐
- 650436.html
- 1666349.html
- 840199.html
- 2818303.html
- 1346434.html
- 2077863.html
- 2951555.html
- 865165.html
- 1619042.html
- 1503400.html
- http://www.ickdjs.cc/book_2417396.html
- http://www.ickdjs.cc/book_3443413.html
- http://www.ickdjs.cc/book_3271651.html
- http://www.ickdjs.cc/book_1526183.html
- http://www.ickdjs.cc/book_1385491.html
- http://www.ickdjs.cc/book_2432755.html
- http://www.ickdjs.cc/book_1368.html
- http://www.ickdjs.cc/book_2657178.html
- http://www.ickdjs.cc/book_1256607.html
- http://www.ickdjs.cc/book_2878714.html