图书介绍
C#图解教程pdf电子书版本下载
- (美)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.NET 2
1.2.1.NET框架的组成 2
1.2.2大大改进的编程环境 3
1.3编译成CIL 4
1.4编译成本机代码并执行 5
1.5CLR 6
1.6CLI 7
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.1Write 14
2.6.2WriteLine 15
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共享程序集和GAC 194
10.8.1把程序集安装到GAC 194
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 er 264
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章 介绍LINQ 352
21.1什么是LNQ 352
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 XML 376
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和EndInvoke 393
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