图书介绍
C#图解教程 第4版 迄今为止最容易看懂的C#书PDF|Epub|txt|kindle电子书版本网盘下载
![C#图解教程 第4版 迄今为止最容易看懂的C#书](https://www.shukui.net/cover/48/31023660.jpg)
- (美)索利斯著;姚琪琳等译 著
- 出版社: 北京:人民邮电出版社
- ISBN:9787115320902
- 出版时间:2013
- 标注页数:524页
- 文件大小:80MB
- 文件页数:540页
- 主题词:C语言-程序设计-教材
PDF下载
下载说明
C#图解教程 第4版 迄今为止最容易看懂的C#书PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第1章 C#和.NET框架1
1.1在.NET之前1
1.1.1 20世纪90年代末的Windows编程1
1.1.2下一代平台服务的目标2
1.2 .NET时代2
1.2.1 .NET框架的组成2
1.2.2大大改进的编程环境3
1.3编译成CIL5
1.4编译成本机代码并执行6
1.5 CLR7
1.6 CLI8
1.7各种缩写9
1.8 C#的演化9
第2章 C#编程概述10
2.1一个简单的C#程序10
2.2标识符12
2.3关键字12
2.4 Main:程序的起始点13
2.5空白13
2.6语句14
2.7从程序中输出文本15
2.7.1 Write15
2.7.2 WriteLine15
2.7.3格式字符串16
2.7.4多重标记和值16
2.7.5格式化数字字符串17
2.8注释:为代码添加注解20
2.8.1关于注释的补充21
2.8.2文档注释21
2.8.3注释类型总结22
第3章 类型、存储和变量23
3.1 C#程序是一组类型声明23
3.2类型是一种模板24
3.3实例化类型24
3.4数据成员和函数成员25
3.5预定义类型26
3.6用户定义类型27
3.7栈和堆28
3.7.1栈28
3.7.2堆29
3.8值类型和引用类型30
3.8.1存储引用类型对象的成员31
3.8.2 C#类型的分类31
3.9变量32
3.9.1变量声明32
3.9.2多变量声明34
3.9.3使用变量的值34
3.10静态类型和dynamic关键字34
3.11可空类型35
第4章 类的基本概念36
4.1类的概述36
4.2程序和类:一个快速示例37
4.3声明类38
4.4类成员38
4.4.1字段38
4.4.2方法40
4.5创建变量和类的实例41
4.6为数据分配内存41
4.7实例成员42
4.8访问修饰符43
4.9从类的内部访问成员45
4.10从类的外部访问成员46
4.11综合应用47
第5章 方法49
5.1方法的结构49
5.2方法体内部的代码执行50
5.3本地变量51
5.3.1类型推断和var关键字52
5.3.2嵌套块中的本地变量52
5.4本地常量53
5.5控制流54
5.6方法调用55
5.7返回值56
5.8返回语句和void方法57
5.9参数59
5.9.1形参59
5.9.2实参59
5.10值参数61
5.11引用参数63
5.12引用类型作为值参数和引用参数65
5.13输出参数68
5.14参数数组70
5.14.1方法调用71
5.14.2用数组作为实参73
5.15参数类型总结74
5.16方法重载74
5.17命名参数75
5.18可选参数76
5.19栈帧79
5.20递归81
第6章 深入理解类83
6.1类成员83
6.2成员修饰符的顺序84
6.3实例类成员85
6.4静态字段86
6.5从类的外部访问静态成员86
6.5.1静态字段示例87
6.5.2静态成员的生存期87
6.6静态函数成员88
6.7其他静态类成员类型89
6.8成员常量90
6.9常量与静态量90
6.10属性91
6.10.1属性声明和访问器92
6.10.2属性示例93
6.10.3使用属性94
6.10.4属性和关联字段94
6.10.5执行其他计算96
6.10.6只读和只写属性96
6.10.7属性与公共字段97
6.10.8计算只读属性示例97
6.10.9自动实现属性98
6.10.10静态属性99
6.11实例构造函数100
6.11.1带参数的构造函数101
6.11.2默认构造函数102
6.12静态构造函数102
6.13对象初始化语句104
6.14析构函数105
6.15 readonly修饰符105
6.16 this关键字106
6.17索引器107
6.17.1什么是索引器108
6.17.2索引器和属性108
6.17.3声明索引器109
6.17.4索引器的set访问器110
6.17.5索引器的get访问器110
6.17.6关于索引器的补充111
6.17.7为Employee示例声明索引器111
6.17.8另一个索引器的示例112
6.17.9索引器重载113
6.18访问器的访问修饰符114
6.19分部类和分部类型115
6.20分部方法116
第7章 类和继承118
7.1类继承118
7.2访问继承的成员119
7.3所有类都派生自object类120
7.4屏蔽基类的成员121
7.5基类访问123
7.6使用基类的引用124
7.6.1虚方法和覆写方法125
7.6.2覆写标记为override的方法127
7.6.3覆盖其他成员类型130
7.7构造函数的执行130
7.7.1构造函数初始化语句132
7.7.2类访问修饰符134
7.8程序集间的继承134
7.9成员访问修饰符136
7.9.1访问成员的区域137
7.9.2公有成员的可访问性138
7.9.3私有成员的可访问性138
7.9.4受保护成员的可访问性138
7.9.5内部成员的可访问性139
7.9.6受保护内部成员的可访问性139
7.9.7成员访问修饰符小结140
7.10抽象成员141
7.11抽象类142
7.11.1抽象类和抽象方法的示例142
7.11.2抽象类的另一个例子143
7.12密封类144
7.13静态类144
7.14扩展方法145
7.15 命名约定148
第8章 表达式和运算符150
8.1表达式150
8.2字面量151
8.2.1整数字面量152
8.2.2实数字面量153
8.2.3字符字面量153
8.2.4字符串字面量154
8.3求值顺序156
8.3.1优先级156
8.3.2结合性157
8.4简单算术运算符157
8.5求余运算符158
8.6关系比较运算符和相等比较运算符159
8.7递增运算符和递减运算符160
8.8条件逻辑运算符162
8.9逻辑运算符163
8.10移位运算符164
8.11赋值运算符165
8.12条件运算符167
8.13一元算术运算符168
8.14用户定义的类型转换169
8.15 运算符重载172
8.15.1运算符重载的限制172
8.15.2运算符重载的示例173
8.16 typeof运算符174
8.17其他运算符176
第9章 语句177
9.1什么是语句177
9.2表达式语句178
9.3控制流语句179
9.4 if语句179
9.5 if……else语句180
9.6 while循环181
9.7 do循环182
9.8 for循环183
9.8.1 for语句中变量的作用域185
9.8.2初始化和迭代表达式中的多表达式185
9.9 switch语句186
9.9.1分支示例187
9.9.2 switch语句的补充188
9.9.3分支标签189
9.10跳转语句189
9.11 break语句190
9.12 continue语句190
9.13标签语句191
9.13.1标签191
9.13.2标签语句的作用域192
9.14 goto语句192
9.15 using语句193
9.15.1资源的包装使用194
9.15.2 using语句的示例195
9.15.3多个资源和嵌套196
9.15.4 using语句的另一种形式197
9.16其他语句197
第10章 结构198
10.1什么是结构198
10.2结构是值类型199
10.3对结构赋值200
10.4构造函数和析构函数201
10.4.1实例构造函数201
10.4.2静态构造函数202
10.4.3构造函数和析构函数小结203
10.5字段初始化语句是不允许的203
10.6结构是密封的203
10.7装箱和拆箱203
10.8结构作为返回值和参数204
10.9关于结构的其他信息204
第11章 枚举205
11.1枚举205
11.1.1设置底层类型和显式值206
11.1.2隐式成员编号207
11.2位标志208
11.2.1 Flags特性210
11.2.2使用位标志的示例212
11.3关于枚举的补充213
第12章 数组216
12.1数组216
12.1.1定义216
12.1.2重要细节217
12.2数组的类型217
12.3数组是对象218
12.4一维数组和矩形数组219
12.5实例化一维数组或矩形数组220
12.6访问数组元素220
12.7初始化数组221
12.7.1显式初始化一维数组222
12.7.2显式初始化矩形数组222
12.7.3初始化矩形数组的语法点223
12.7.4快捷语法223
12.7.5隐式类型数组223
12.7.6综合内容224
12.8交错数组224
12.8.1声明交错数组225
12.8.2快捷实例化225
12.8.3实例化交错数组226
12.8.4交错数组中的子数组227
12.9比较矩形数组和交错数组228
12.10 foreach语句229
12.10.1迭代变量是只读的230
12.10.2 foreach语句和多维数组231
12.11数组协变232
12.12数组继承的有用成员233
12.13比较数组类型236
第13章 委托237
13.1什么是委托237
13.2委托概述239
13.3声明委托类型240
13.4创建委托对象241
13.5给委托赋值242
13.6组合委托243
13.7为委托添加方法243
13.8从委托移除方法244
13.9调用委托244
13.10委托的示例245
13.11调用带返回值的委托246
13.12调用带引用参数的委托247
13.13匿名方法248
13.13.1使用匿名方法249
13.13.2匿名方法的语法249
13.13.3变量和参数的作用域250
13.14 Lambda表达式252
第14章 事件255
14.1发布者和订阅者255
14.2源代码组件概览257
14.3声明事件257
14.4订阅事件258
14.5触发事件259
14.6标准事件的用法261
14.6.1通过扩展EventArgs来传递数据262
14.6.2移除事件处理程序264
14.7事件访问器265
第15章 接口267
15.1什么是接口267
15.2声明接口272
15.3实现接口273
15.4接口是引用类型275
15.5接口和as运算符276
15.6实现多个接口276
15.7实现具有重复成员的接口277
15.8多个接口的引用279
15.9派生成员作为实现280
15.10显式接口成员实现281
15.11接口可以继承接口283
15.12不同类实现一个接口的示例284
第16章 转换286
16.1什么是转换286
16.2隐式转换287
16.3显式转换和强制转换288
16.4转换的类型289
16.5数字的转换290
16.5.1隐式数字转换290
16.5.2溢出检测上下文291
16.5.3显式数字转换292
16.6引用转换295
16.6.1隐式引用转换296
16.6.2显式引用转换297
16.6.3有效显式引用转换298
16.7装箱转换299
16.7.1装箱是创建副本300
16.7.2装箱转换300
16.8拆箱转换301
16.9用户自定义转换302
16.9.1用户自定义转换的约束302
16.9.2用户自定义转换的示例302
16.9.3评估用户自定义转换304
16.9.4多步用户自定义转换的示例304
16.10 is运算符305
16.11 as运算符306
第17章 泛型308
17.1什么是泛型308
17.2 C#中的泛型310
17.3泛型类311
17.4声明泛型类312
17.5创建构造类型312
17.6创建变量和实例313
17.6.1使用泛型的栈的示例315
17.6.2比较泛型和非泛型栈316
17.7类型参数的约束317
17.7.1 Where子句317
17.7.2约束类型和次序318
17.8泛型方法319
17.8.1声明泛型方法319
17.8.2调用泛型方法320
17.8.3泛型方法的示例321
17.9扩展方法和泛型类322
17.10泛型结构323
17.11泛型委托323
17.12泛型接口325
17.12.1使用泛型接口的示例326
17.12.2泛型接口的实现必须唯一327
17.13协变328
17.14逆变330
17.14.1接口的协变和逆变332
17.14.2有关可变性的更多内容333
第18章 枚举器和迭代器335
18.1枚举器和可枚举类型335
18.2 IEnumerator接口337
18.3泛型枚举接口341
18.4迭代器343
18.4.1迭代器块343
18.4.2使用迭代器来创建枚举器344
18.4.3使用迭代器来创建可枚举类型346
18.5常见迭代器模式347
18.6产生多个可枚举类型348
18.7将迭代器作为属性349
18.8迭代器实质350
第19章 LINQ352
19.1什么是LINQ352
19.2 LINQ提供程序353
19.3方法语法和查询语法355
19.4查询变量356
19.5查询表达式的结构357
19.5.1 from子句358
19.5.2 join子句359
19.5.3什么是联结360
19.5.4查询主体中的from……let……where片段362
19.5.5 orderby子句365
19.5.6 select……group子句366
19.5.7查询中的匿名类型367
19.5.8 group子句368
19.5.9查询延续:into子句369
19.6标准查询运算符370
19.6.1标准查询运算符的签名373
19.6.2查询表达式和标准查询运算符374
19.6.3将委托作为参数375
19.6.4 LINQ预定义的委托类型376
19.6.5使用委托参数的示例377
19.6.6使用Lambda表达式参数的示例378
19.7 LINQ to XML379
19.7.1标记语言379
19.7.2 XML基础379
19.7.3 XML类381
19.7.4使用XML特性387
19.7.5节点的其他类型389
19.7.6使用LINQ to XML的LINQ查询390
第20章 异步编程393
20.1什么是异步393
20.2 async/await特性的结构398
20.3什么是异步方法399
20.3.1异步方法的控制流402
20.3.2 await表达式404
20.3.3取消一个异步操作407
20.3.4异常处理和await表达式409
20.3.5在调用方法中同步地等待任务410
20.3.6在异步方法中异步地等待任务413
20.3.7 Task.Delay方法415
20.4在GUI程序中执行异步操作416
20.5使用异步Lambda表达式420
20.6完整的GUI程序421
20.7 BackgroundWorker类423
20.8并行循环428
20.9其他异步编程模式430
20.10 BeginInvoke和EndInvoke431
20.10.1等待—直到结束模式432
20.10.2 AsyncResult类433
20.10.3轮询模式434
20.10.4回调模式435
20.11计时器438
第21章 命名空间和程序集440
21.1引用其他程序集440
21.2命名空间444
21.2.1命名空间名称447
21.2.2命名空间的补充447
21.2.3命名空间跨文件伸展448
21.2.4嵌套命名空间449
21.3 using指令450
21.3.1 using命名空间指令450
21.3.2 using别名指令451
21.4程序集的结构451
21.5程序集标识符453
21.6强命名程序集453
21.7程序集的私有方式部署455
21.8共享程序集和GAC455
21.8.1把程序集安装到GAC455
21.8.2 GAC内的并肩执行456
21.9配置文件457
21.10延迟签名457
第22章 异常459
22.1什么是异常459
22.2 try语句460
22.3异常类461
22.4 catch子句462
22.5使用特定catch子句的示例462
22.6 catch子句段463
22.7 finally块464
22.8为异常寻找处理程序465
22.9更进一步搜索466
22.9.1一般法则466
22.9.2搜索调用栈的示例467
22.10抛出异常469
22.11不带异常对象的抛出470
第23章 预处理指令472
23.1什么是预处理指令472
23.2基本规则472
23.3 #define和#undef指令473
23.4条件编译474
23.5条件编译结构475
23.6诊断指令476
23.7行号指令477
23.8区域指令478
23.9 #pragma warning指令479
第24章 反射和特性480
24.1元数据和反射480
24.2 Type类480
24.3获取Type对象482
24.4什么是特性484
24.5应用特性485
24.6预定义的保留的特性485
24.6.1 Obsolete特性485
24.6.2 Conditional特性486
24.6.3调用者信息特性488
24.6.4 DebuggerStepThrough特性488
24.6.5其他预定义特性489
24.7有关应用特性的更多内容490
24.7.1多个特性490
24.7.2其他类型的目标490
24.7.3全局特性491
24.8自定义特性491
24.8.1声明自定义特性492
24.8.2使用特性的构造函数492
24.8.3指定构造函数492
24.8.4使用构造函数493
24.8.5构造函数中的位置参数和命名参数493
24.8.6限制特性的使用494
24.8.7自定义特性的最佳实践495
24.9访问特性496
24.9.1使用IsDefined方法496
24.9.2使用GetCustomAttributes方法497
第25章 其他主题499
25.1概述499
25.2字符串499
25.3使用StringBuilder类501
25.4把字符串解析为数据值502
25.5关于可空类型的更多内容503
25.5.1为可空类型赋值505
25.5.2使用空接合运算符505
25.5.3使用可空用户自定义类型506
25.6 Main方法508
25.7文档注释509
25.7.1插入文档注释510
25.7.2使用其他XML标签510
25.8嵌套类型511
25.8.1嵌套类的示例512
25.8.2可见性和嵌套类型513
25.9析构函数和dispose模式514
25.9.1标准dispose模式515
25.9.2比较构造函数和析构函数517
25.10和COM的互操作518
索引521