图书介绍
C#图解教程PDF|Epub|txt|kindle电子书版本网盘下载
![C#图解教程](https://www.shukui.net/cover/25/30152682.jpg)
- (美)DANIELSOLIS著 著
- 出版社: 北京:人民邮电出版社
- ISBN:9787115187734
- 出版时间:2009
- 标注页数:445页
- 文件大小:175MB
- 文件页数:461页
- 主题词:C语言-程序设计-教材
PDF下载
下载说明
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.120世纪90年代后期的Windows编程1
1.1.2下一代平台的目标2
1.2进入Microsoft.NET2
1.2.1.NET框架的组成2
1.2.2大大改进的编程环境3
1.3编译成CIL4
1.4编译成本机代码并执行5
1.5CLR6
1.6CLI7
1.7缩写回顾8
第2章 C#编程概述9
2.1一个简单的C#程序9
2.2标识符和关键字10
2.2.1命名约定11
2.2.2关键字12
2.3Main:程序的起始点12
2.4空白13
2.5语句13
2.5.1简单语句13
2.5.2块13
2.6从程序中输出文本14
2.6.1Write14
2.6.2WriteLine15
2.6.3格式字符串15
2.6.4多重标记和值16
2.7注释16
2.7.1关于注释的补充17
2.7.2文档注释17
2.7.3注释类型总结18
第3章 类型、存储和变量19
3.1C#程序是一组类型声明19
3.2类型是一种模板20
3.3实例化类型20
3.4数据成员和函数成员21
3.5预定义类型21
3.6用户定义类型23
3.7栈和堆24
3.7.1栈24
3.7.2堆24
3.8值类型和引用类型25
3.8.1存储引用类型对象的成员26
3.8.2C#类型的分类27
3.9变量27
3.9.1变量声明27
3.9.2多重变量声明29
3.9.3使用变量的值29
第4章 类:基础30
4.1类的概述30
4.2程序和类:一个快速的示例31
4.3声明类31
4.4类成员32
4.4.1字段32
4.4.2显式和隐式字段初始化33
4.4.3声明多个字段34
4.4.4方法34
4.5创建变量和类的实例35
4.6为数据分配内存35
4.7实例成员36
4.8访问修饰符37
4.9从类的内部访问成员39
4.10从类的外部访问成员40
4.11综合应用41
第5章 方法43
5.1方法的结构43
5.2本地变量45
5.2.1类型推断和var关键字45
5.2.2嵌套块中的本地变量46
5.3本地常量47
5.4方法调用49
5.5返回值50
5.6参数52
5.6.1形参53
5.6.2实参53
5.6.3带输入参数的方法示例54
5.7值参数54
5.8引用参数56
5.9输出参数58
5.10参数数组60
5.10.1方法调用61
5.10.2数组作实参63
5.11参数类型总结64
5.12栈帧64
5.13递归65
5.14方法重载66
第6章 类进阶69
6.1类成员69
6.2实例类成员71
6.3静态字段71
6.4从类的外部访问静态成员72
6.4.1静态字段示例73
6.4.2静态成员的生存期73
6.5静态函数成员74
6.6其他静态类成员类型75
6.7成员常量75
6.8属性77
6.8.1属性声明和访问器78
6.8.2属性示例78
6.8.3使用属性79
6.8.4属性和关联字段80
6.8.5执行其他计算81
6.8.6只读和只写属性82
6.8.7计算只读属性示例82
6.8.8属性和数据库示例83
6.8.9自动实现属性83
6.8.10静态属性84
6.9实例构造函数85
6.9.1带参数的构造函数86
6.9.2默认构造函数87
6.10静态构造函数88
6.10.1静态构造函数示例88
6.10.2构造函数的可访问性89
6.11对象初始化列表89
6.12析构函数90
6.12.1调用析构函数91
6.12.2标准清理模式93
6.13比较构造函数和析构函数94
6.14readonly修饰符94
6.15this关键字95
6.16索引96
6.16.1什么是索引97
6.16.2索引和属性98
6.16.3声明索引98
6.16.4set访问器99
6.16.5get访问器100
6.16.6关于索引的补充100
6.16.7为Employee示例声明索引100
6.16.8另一个索引示例101
6.16.9索引重载102
6.17访问器的访问修饰符103
6.18分部类和分部类型104
第7章 类和继承107
7.1类继承107
7.2访问继承的成员108
7.3隐藏基类的成员110
7.4基类访问111
7.5使用基类的引用112
7.5.1虚方法和覆写方法114
7.5.2覆写标记为override的方法115
7.6构造函数的执行118
7.6.1构造函数初始化语句119
7.6.2类访问修饰符120
7.7程序集间的继承121
7.8成员访问修饰符123
7.8.1访问成员的区域123
7.8.2公有成员的可访问性124
7.8.3私有成员的可访问性125
7.8.4受保护成员的可访问性125
7.8.5内部成员的可访问性126
7.8.6受保护内部成员的可访问性126
7.8.7成员访问修饰符的总结126
7.9抽象成员127
7.10抽象类128
7.11密封类129
7.12静态类130
7.13扩展方法130
7.14外部方法133
第8章 表达式和运算符135
8.1表达式135
8.2字面量136
8.2.1整数字面量137
8.2.2实数字面量137
8.2.3字符字面量138
8.2.4字符串字面量139
8.3求值顺序140
8.3.1优先级141
8.3.2结合性141
8.4简单算术运算符142
8.5求余运算符142
8.6关系比较运算符和相等比较运算符143
8.7递增运算符和递减运算符145
8.8条件逻辑运算符146
8.9逻辑运算符147
8.10移位运算符148
8.11赋值运算符150
8.12条件运算符151
8.13一元算术运算符152
8.14用户定义类型转换153
8.15 运算符重载155
8.15.1运算符重载的限制156
8.15.2运算符重载的示例157
8.16 typeof运算符158
第9章 语句161
9.1什么是语句161
9.2表达式语句162
9.3控制流语句163
9.4 1f语句163
9.5 if...el se语句164
9.6 switch语句165
9.6.1分支示例166
9.6.2 switch语句的补充167
9.6.3分支标签168
9.7 while循环169
9.8 do循环169
9.9 for循环170
9.9.1 for语句中变量的有效范围172
9.9.2初始化语句和迭代表达式中的多表达式172
9.10跳转语句172
9.10.1 break语句173
9.10.2 continue语句173
9.11标签语句174
9.11.1标签174
9.11.2标签语句的范围175
9.12 goto语句175
9.13 using语句176
9.13.1资源的包装使用177
9.13.2 using语句的示例178
9.13.3多个资源和嵌套179
9.13.4 using语句的另一种形式180
9.14其他语句180
第10章 命名空间和程序集181
10.1引用其他程序集181
10.2命名空间184
10.2.1命名空间名称186
10.2.2命名空间的补充187
10.2.3命名空间跨文件伸展188
10.2.4嵌套命名空间188
10.3 using指令189
10.3.1 using命名空间指令189
10.3.2 using别名指令190
10.4程序集的结构191
10.5程序集标识符192
10.6强命名程序集193
10.7程序集的私有方式部署194
10.8共享程序集和GAC194
10.8.1把程序集安装到GAC194
10.8.2 GAC内的并肩执行195
10.9配置文件196
10.10延迟签名196
第11章 异常198
11.1什么是异常198
11.2 try语句199
11.3异常类200
11.4 catch子句200
11.4.1使用特定catch子句的示例201
11.4.2 catch子句段202
11.5 finally块203
11.6为异常寻找处理代码204
11.7更进一步搜索204
11.7.1一般法则205
11.7.2搜索调用栈的示例206
11.8抛出异常207
11.9不带异常对象的抛出208
第12章 结构210
12.1什么是结构210
12.2结构是值类型211
12.3对结构赋值212
12.4构造函数和析构函数213
12.4.1实例构造函数213
12.4.2静态构造函数214
12.4.3构造函数和析构函数的总结214
12.5字段初始化是不允许的215
12.6结构是密封的215
12.7装箱和取消装箱215
12.8结构作为返回类型和参数215
12.9关于结构的附加信息215
第13章 枚举217
13.1枚举217
13.1.1设置底层类型和显式值218
13.1.2隐式成员编号219
13.2位标志220
13.2.1 Flags特性222
13.2.2使用位标志的示例223
13.3关于枚举的补充224
第14章 数组226
14.1数组226
14.1.1定义226
14.1.2重要细节227
14.2数组的类型227
14.3数组是对象228
14.4一维数组和矩形数组229
14.5实例化一维数组或矩形数组229
14.6访问数组元素230
14.7初始化数组231
14.7.1显式初始化一维数组231
14.7.2显式初始化矩形数组232
14.7.3初始化矩形数组的语法点232
14.7.4快捷语法233
14.7.5隐式类型数组233
14.7.6综合内容234
14.8交错数组234
14.8.1声明交错数组235
14.8.2快捷实例化235
14.8.3实例化交错数组235
14.8.4交错数组中的子数组236
14.9比较矩形数组和交错数组237
14.10 foreach语句238
14.10.1迭代变量是只读的239
14.10.2 foreach语句和多维数组240
14.11数组协变241
14.12数组继承的有用成员242
14.13比较数组类型245
第15章 委托246
15.1什么是委托246
15.2声明委托类型247
15.3创建委托对象248
15.4赋值委托249
15.5组合委托250
15.6为委托增加方法250
15.7从委托移除方法251
15.8调用委托251
15.9委托的示例252
15.10调用带返回值的委托253
15.11调用带引用参数的委托254
15.12匿名方法255
15.12.1使用匿名方法255
15.12.2匿名方法的语法256
15.12.3变量和参数的作用域257
15.13 Lambda表达式259
第16章 事件261
16.1事件和委托相似261
16.2源代码组件概览262
16.3声明事件263
16.3.1事件是成员263
16.3.2委托类型和EventHandl er264
16.4触发事件264
16.5订阅事件265
16.6标准事件的用法267
16.6.1使用EventArgs类267
16.6.2通过扩展EventArgs来传递数据268
16.6.3使用自定义委托268
16.7 MyTimerClass代码270
16.8事件访问器271
第17章 接口273
17.1什么是接口273
17.2声明接口276
17.3实现接口277
17.4接口是引用类型278
17.5接口和as运算符280
17.6实现多个接口280
17.7实现具有重复成员的接口281
17.8多个接口的引用282
17.9派生成员作为实现284
17.10显式接口成员实现284
17.11接口可以继承接口287
第18章 转换290
18.1什么是转换290
18.2隐式转换291
18.3显式转换和强制转换292
18.4转换的类型293
18.5数字的转换294
18.5.1隐式数字转换294
18.5.2溢出检测上下文295
18.5.3显式数字转换296
18.6引用转换299
18.6.1隐式引用转换300
18.6.2显式引用转换301
18.6.3有效显式引用转换301
18.7装箱转换302
18.8拆箱转换304
18.9用户自定义转换305
18.9.1用户自定义转换的约束305
18.9.2用户自定义转换的示例306
18.9.3计算用户自定义转换307
18.9.4多步用户自定义转换的示例308
18.10 is运算符309
18.11 as运算符310
第19章 泛型311
19.1什么是泛型311
19.2 C#中的泛型313
19.3泛型类314
19.4声明泛型类314
19.5创建构造类型315
19.6创建变量和实例316
19.6.1使用泛型的栈的示例317
19.6.2比较泛型和非泛型栈318
19.7类型参数的约束319
19.7.1 Where子句320
19.7.2约束类型和次序320
19.8泛型结构321
19.9泛型接口322
19.9.1使用泛型接口的示例323
19.9.2泛型接口的实现必须唯一323
19.10泛型委托324
19.11泛型方法326
19.11.1声明泛型方法326
19.11.2调用泛型方法327
19.11.3泛型方法的示例328
19.12扩展方法和泛型类329
第20章 枚举数和迭代器331
20.1枚举数和可枚举类型331
20.1.1使用foreach语句331
20.1.2枚举数类型332
20.2使用IEnumerator接口333
20.3IEnumerable接口336
20.4不实现接口的枚举数338
20.5泛型枚举接口339
20.6 IEnumerator〈T〉接口339
20.7IEnumerable〈T〉接口341
20.8迭代器342
20.8.1迭代器块343
20.8.2使用迭代器来创建枚举数344
20.8.3使用迭代器来创建可枚举类型345
20.9常见迭代器模式346
20.10产生可枚举类型和枚举数347
20.11产生多个可枚举类型348
20.12产生多个枚举数349
20.13迭代器实质350
第21章 介绍LINQ352
21.1什么是LNQ352
21.2 LNQ提供程序353
21.3查询语法和方法语法355
21.4查询变量356
21.5查询表达式的结构357
21.5.1 from子句358
21.5.2 join子句359
21.5.3什么是联结360
21.5.4查询主体中的f rom...let...where片段362
21.5.5 orderby子句365
21.5.6 sel ect group子句366
21.5.7查询中的匿名类型367
21.5.8 group子句368
21.5.9查询延续369
21.6标准查询运算符370
21.6.1查询表达式和标准查询运算符371
21.6.2标准查询运算符的签名372
21.6.3委托作为参数373
21.6.4 LNQ预定义的委托类型374
21.6.5使用委托参数的示例375
21.6.6使用Lambda表达式参数的示例375
21.7 LINQ to XML376
21.7.1标记语言377
21.7.2 XML基础377
21.7.3 XML类378
21.7.4使用XML树的值381
21.7.5使用XML属性384
21.7.6节点的其他类型387
21.7.7使用LINQ to XML的LINQ查询388
第22章 异步编程简介391
22.1进程、线程以及异步编程391
22.1.1多线程处理带来的问题391
22.1.2多线程处理的复杂度392
22.2异步编程模式392
22.3 BeginInvoke和EndInvoke393
22.3.1等待-直到结束模式395
22.3.2 AsyncResult类396
22.3.3轮询模式396
22.3.4回调模式397
22.4计时器400
第23章 预处理指令403
23.1什么是预处理指令403
23.2基本规则403
23.3 #define和#undef指令404
23.4条件编译405
23.5条件编译结构406
23.6诊断指令408
23.7行号指令408
23.8区域指令409
23.9 #pragma warning指令410
第24章 反射和特性411
24.1元数据和反射411
24.2 Type类411
24.3获取Type对象413
24.4什么是特性415
24.5应用特性415
24.6预定义的保留的特性416
24.6.1 Obsolete特性416
24.6.2 Conditional特性417
24.6.3预定义的特性418
24.7有关应用特性的更多内容419
24.7.1多个特性419
24.7.2其他类型的目标419
24.7.3全局特性420
24.8自定义特性420
24.8.1声明自定义特性421
24.8.2使用特性构造函数421
24.8.3指定构造函数421
24.8.4使用构造函数422
24.8.5构造函数中的位置参数和命名参数422
24.8.6限制特性的使用423
24.8.7自定义特性的最佳实践424
24.9访问特性425
24.9.1使用IsDefined方法425
24.9.2使用GetCustomAttribute方法426
第25章 其他主题428
25.1概述428
25.2字符串428
25.2.1使用StringBuilder类429
25.2.2格式化数字字符串430
25.3把字符串解析为数据值433
25.4可空类型434
25.4.1创建可空类型434
25.4.2为可空类型赋值436
25.4.3使用可空用户自定义类型437
25.5 Main方法438
25.6文档注释440
25.6.1插入文档注释440
25.6.2使用其他XML标签441
25.7嵌套类型441
25.7.1嵌套类的示例442
25.7.2可见性和嵌套类型443