• 免费电子书下载
  • 为中华之崛起而读书!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏读书小屋吧

《C# 4.0权威指南》

未分类 admin 3年前 (2021-11-25) 63次浏览

:出版社:机械工业出版社出版年:2010-1页数:600定价:79.00元装帧:平装丛书:实战系列ISBN:9787111321873

内容简介

C# 4.0权威指南》由国内资深微软技术专家亲自执笔,微软技术开发者社区和技术专家联袂推荐。

内容新颖,基于最新的C# 4.0、NET Framework 4和Visual Studio 2010;写作方式有创新,用图解的方式对C#进行了完美的演绎;内容全面,不仅重点讲解了C# 4.0的所有新特性,而且对C#的所有知识点的原理、用法和要点都进行了全面的讲解和深度的分析,广度和深度完美结合。本书注重实践,包含大量有价值的示例代码,可操作性极强。

全书分为三个部分:准备篇首先对.NET体系结构进行了全面的介绍,能帮助所有.NET相关技术的读者建立.NET的大局观,对初学者尤为重要,接着用简单但完整的示例演示了C#应用程序开发的全过程,能迅速带领读者进入实践状态;语法篇对C#的语法进行了系统而全面的讲解,包括标识符和关键字、变量和常量、类型以及类型转换、表达式和运算符、语句、方法、类、继承、多态、接口、结构、枚举、委托、事件、泛型、数组、集合、字符串和正则表达式、异常处理、命名空间和程序集、预处理指令、元数据和特性、异步编程和多线程编程、I/O操作、XML处理增强的COM Interop和并行编程等;附录部分讲解了Visual Studio 2010的安装、配置和使用,以便于没有经验的初学者能快速搭建开发环境。

《C# 4.0权威指南》不仅是所有希望掌握.NET平台开发技术的读者的理想学习资料,而且也是所有.NET(C#)程序员不可多得的参考书,适合各层次的微软技术开发者和高校的师生阅读。

姜晓东,资深微软技术专家和系统架构师,对.NET体系架构、C#、CIL、Win32平台都有较深入的研究。著名微软技术讲师,在江西微软技术中心主讲软件设计(UML和设计模式)和.NET FrameWork方面的课程,曾在微软区域技术中心的“周五讲坛”主讲C#和Windows Mobile开发方面的课程,并获得“最佳讲师”称号。多年来一直活跃在研发一线,具有多年的项目研发经验,曾参与了财政工程项目、国家863软件项目以及电子基金项目的研发,在桌面应用和Web应用方面都积累了丰富的实践经验。

CSDN的元老级会员,51CTO的技术博客专家,对IT技术的发展方向有独到的见解,近期关注HTML 5和移动开发。

目录

前言 C#发展路线图 C#4.0新特性总述 为何写作本书 本书面向的读者 如何阅读本书 致谢 第一部分:准备篇 1 第1章 .NET体系结构 1 1.1 .NET框架概述 3 1.2 .NET的平台无关性 4 1.3公共语言运行时(CLR) 5 1.4 通用类型系统(CTS) 6 1.4.1值类型和引用类型 7 1.4.2装箱和拆箱 8 1.5 公共语言规范(CLS) 10 1.6 语言的互操作性 11 1.4即时编译(JIT) 12 1.5中间语言(CIL) 13 1.6基类库(BCL) 14 第2章 从“Hello World!”开始 15 2.1一个简单的C#程序 15 2.2编译和运行程序 16 2.2.1在Visual Stuido 2010中编译和运行 16 2.2.2通过命令行编译和运行 17 2.3详细介绍 21 2.4小结 25 第二部分:语法篇 26 第3章 标识符和关键字 26 3.1 标识符 26 3.2 关键字 27 3.3 标识符的命名约定 30 3.4 小结 30 第4章 变量、常量和类型 31 4.1变量 31 4.1.1给变量命名 32 4.1.2声明变量 32 4.1.3变量的初始化 33 4.1.4 类型推断 35 4.1.5变量的作用域 36 4.2常量 40 4.3C#数据类型 40 4.3.1内置的值类型 42 4.3.2 内置的引用类型 52 4.3.3指针类型 59 4.3.4 Nullable类型 60 4.3.5 dynamic类型 61 4.4 进阶阅读:关于动态语言运行时(DLR) 63 第5章 类型转换 66 5.1隐式类型转换 66 5.1.1 数值类型 68 5.1.2 引用类型 69 5.1.3 装箱 70 5.2 显式类型转换 71 5.2.1数值类型 73 5.2.2溢出检查 73 5.2.3引用类型 75 5.2.4拆箱 76 5.3 as和is运算符 76 第6章 表达式和运算符 83 6.1 表达式 83 6.2 运算符的类型 84 6.3 运算符的优先级 85 6.4 算术运算符 86 6.5 求余运算符 87 6.6 递增运算符和递减运算符 88 6.7 关系和类型检测运算符 90 6.8 相等性判断运算符 91 6.9 条件运算符 93 6.10 逻辑运算符 95 6.11 位运算符 96 6.12 赋值运算符 97 6.13 typeof运算符 99 6.14 运算符重载 100 6.14.1 运算符重载 101 6.14.2 可重载的运算符 102 第7章 语句 103 7.1 什么是语句 103 7.2 程序的三种结构 103 7.2.1 顺序结构 104 7.2.2 分支结构 104 7.2.3 循环结构 105 7.3 条件语句 106 7.3.1 if语句 106 7.3.2 switch语句 110 7.4 跳转语句 112 7.4.1 break语句 112 7.4.2 continue语句 114 7.4.3 return语句 115 7.4.4 throw语句 116 7.4.5 goto语句 116 7.4.6 default语句 117 7.5 标签语句 117 7.5.1 标签 118 7.5.2 标签语句的有效范围 118 7.6 循环语句 118 7.6.1 while循环 119 7.6.2 do…while循环 120 7.6.3 for循环 121 7.6.4 foreach…in循环 123 7.7 using语句 124 第8章 方法 127 8.1 方法的构成 127 8.2 局部变量和常量 128 8.3 方法的调用 130 8.4 返回值 131 8.5 参数 132 8.5.1 形参 132 8.5.2 实参 133 8.5.3 新特性:命名和可选参数 134 8.6 四种类型的参数 139 8.6.1 按值传递参数 139 8.6.2 按引用传递参数,关键字:ref 142 8.6.3 输出参数,关键字:out 145 8.6.4 参数数组,关键字:params 148 8.7 栈帧 150 8.8 递归 151 8.9 方法的重载 152 8.10静态方法 154 第9章 类 156 9.1 类是什么 156 9.2 “Hello World”程序回顾 157 9.3 类的声明 158 9.4 类的成员 159 9.4.1 字段 160 9.4.2 静态字段 161 9.4.3 方法 163 9.4.4 字段的初始化 163 9.4.5 属性 165 9.5 类的实例:对象 177 9.6 实例化中的内存分配 178 9.7 实例的成员 179 9.8 this关键字 179 9.9 访问修饰符 181 9.10 访问类的成员 182 9.10.1 从类内部访问成员 182 9.10.2 从类外部访问成员 183 9.10.3 从类外部访问静态成员 184 9.11 构造函数 185 9.12 对象初始化列表 193 9.13 析构函数 196 9.14 只读字段和常数 198 9.15 索引器 200 9.16 分部类型和分部方法,修饰符:partial 201 9.16.1 分部类 202 9.16.2 分部方法 204 9.17 注释 208 9.17.1 行注释 208 9.17.2 块注释 210 9.17.3 XML文档注释 211 第10章 继承 215 10.1 类的继承 215 10.2 访问继承的成员 217 10.3 使用new修饰符隐藏基类的成员 219 10.4 访问基类的成员 221 10.5 类的初始化顺序 222 10.6 在派生类中指定基类构造函数 224 10.7 类的访问修饰符 229 10.8 跨程序集的继承 229 10.9 密封类 231 10.10 静态类 232 10.11 扩展方法 234 10.12 派生类型的向上转型 236 第11章 多态 238 11.1 重载方法 239 11.2 虚方法 243 11.3 覆写方法 244 11.4 覆写标记为override的方法 246 11.5 抽象类及抽象方法 249 第12章 接口 252 12.1 定义接口 253 12.2 声明和实现接口 254 12.3 基类中的实现作为接口实现 258 12.4 实现多个接口 259 12.5 实现具有相同成员的接口 261 12.6 显式接口成员实现 263 12.7 调用显式接口成员实现 265 12.8 接口的派生 267 第13章 结 构 269 13.1 什么是结构 269 13.2 结构是值类型 270 13.3 给结构赋值 273 13.4 构造函数 275 13.4.1 实例构造函数 275 13.4.2 静态构造函数 277 13.5 多态和可继承性 279 13.6 装箱和拆箱 280 13.7 结构和类的对比 281 13.7.1字段初始化 282 13.7.2性能 283 13.7.3结构和类的适用场合分析 286 第14章 枚 举 287 14.1 什么是枚举 287 14.2 设置枚举的底层数据类型 291 14.3 显式设置枚举的成员常量值 292 14.4 使用标志枚举 294 14.5一些使用建议 296 第15章 委 托 298 15.1 什么是委托 298 15.2 委托是引用类型 299 15.3 委托的声明和实例化 300 15.4 委托的组合 302 15.5 为委托添加一个方法 304 15.6 从委托中删除一个方法 305 15.7 委托在回调中的应用 307 15.8 委托中的协变和逆变 309 15.9 匿名方法 312 15.10 λ表达式 315 第16章 事 件 318 16.1 什么是事件 318 16.2 事件和委托的关系 319 16.3 如何声明事件 319 16.4 订阅事件 321 16.5 触发事件 324 16.6 使用和扩展EventArgs类 325 16.7 使用自定义委托 327 16.8 事件访问器 330 第17章 泛 型 332 17.1 什么是泛型 332 17.2 泛型类型 335 17.3 泛型类型的声明和实例化 337 17.4 类型参数 342 17.5 类型参数的约束 343 17.5.1 Where子句 344 17.5.2 约束类型和顺序 345 17.6 泛型类 346 17.7 泛型结构 350 17.8 泛型接口 351 17.9 泛型委托 354 17.10 泛型方法 356 17.11 扩展方法和泛型类 358 17.12 协变和逆变 360 第18章 数 组 362 18.1 数组的声明 363 18.2 数组的类型 364 18.3 数组派生自Array对象 365 18.4 实例化数组 366 18.5 初始化数组 368 18.5.1 显式初始化一维数组 369 18.5.2 显式初始化矩形数组及要点 370 18.5.3 隐式类型数组 373 18.6 访问数组元素 374 18.7 交错数组 375 18.7.1 交错数组的声明 376 18.7.2 交错数组的实例化 376 18.7.3 交错数组的初始化 377 18.8 矩形数组和交错数组的对比 378 18.9 使用foreach和for语句访问数组 381 18.9.1 foreach语句 381 18.9.2 for语句 383 18.9.3 迭代变量 384 18.10 数组协变 386 18.11 从Array对象继承的成员 388 18.12 数组的浅复制和深复制 390 第19章 集 合 396 19.1 集合接口 396 19.2 常用的几种集合类型 400 19.2.1 ArrayList 402 19.2.2 Hashtable 406 19.2.3 Queue和Queue 410 19.2.4 SortedList 414 19.2.5 Stack和Stack 416 19.2.6 BitArray 420 19.2.7 List 422 19.2.8 HashSet 434 19.3 自定义集合 439 19.3.1 CollectionBase 440 19.3.2 ReadOnlyCollectionBase 445 19.4 迭代器 448 19.5 泛型集合接口支持协变和逆变 452 19.6 LINQ to Objects 456 19.6.1 LINQ简介 456 19.6.2 查询语法 458 19.6.3 方法语法 459 19.6.4 查询操作的组成 459 19.6.5 关于查询变量 460 19.6.6 查询语法和方法语法的统一 461 第20章 字符串与正则表达式 462 20.1 理解字符串 462 20.2 字符串的常用成员 465 20.3 字符串格式化 474 20.4 使用StringBuilder类 480 20.5 正则表达式 482 20.5.1 正则表达式基本语法 484 20.5.2 .NET对于正则表达式的支持 491 20.5.3开始使用正则表达式 496 第21章 异常处理 500 21.1 异常类 500 21.2抛出异常 502 21.3捕获异常 503 21.4自定义的异常类 507 21.5异常处理的原则 508 第22章 命名空间和程序集 510 22.1 命名空间 510 22.1.1 使用命名空间 511 22.1.2 使用别名 514 22.2 程序集 515 22.2.1 程序集的结构 518 22.2.2 程序集清单 519 22.2.3 私有程序集和共享程序集 521 22.2.4 应用程序域 521 22.2.5 创建动态程序集并动态加载执行 524 22.2.6 全局程序集缓存 528 第23章 预处理指令 534 23.1 什么是预处理指令 534 23.2 先来观察一段示例 534 23.3 预处理指令集 536 23.4 #define和#undef指令 537 23.5 条件编译指令 538 23.6 #warning和#error指令 540 23.7 #line指令 541 23.8 #region和#endregion指令 544 23.9 #pragma warning指令 546 第24章 元数据和特性 548 24.1 元数据 548 24.1.1 从IntelliSense谈起 554 24.1.2 访问元数据 556 24.2 特性(Attribute) 564 24.2.1 什么是特性 567 24.2.2 创建自定义特性 573 24.2.3 访问特性 581 24.2.4 常用特性 582 24.2.5特性应用完整示例 595 第25章 异步编程和多线程编程 600 25.1 进程和线程 600 25.2 BeginInvoke 和 EndInvoke 603 25.3 IAsyncResult接口和AsyncResult类 604 25.4 异步编程的4种方法 606 25.4.1 使用EndInvoke 606 25.4.2 使用WaitHandle 607 25.4.3 轮询 609 25.4.4 回调 611 25.5 多线程编程 613 25.5.1 Thread类 613 25.5.2 使用线程池 615 25.5.3 线程同步 617 25.5.4 死锁 622 第26章 I/O操作 627 26.1 文件和目录 627 26.1.1 File和Directory 628 26.1.2 FileInfo和DirectoryInfo 630 26.1.3 文件I/O的改进 634 26.2 流(Stream) 641 26.3 异步操作 646 26.4 网络流(NetworkStream)的使用 649 26.5 序列化 655 26.5.1 BinaryFormatter 658 26.5.2 SoapFormatter 660 26.5.3 XML序列化 664 26.6 独立存储机制 668 第27章 XML处理 671 27.1 System.Xml命名空间 671 27.2 使用DOM 672 27.3 XPath和XSLT 678 27.4 LINQ to XML 684 27.4.1 LINQ to XML类库介绍 684 27.4.2 创建XML文档 685 27.4.3 使用LINQ进行遍历和查询 686 27.4.4 修改XML文档 688 第28章 增强的COM Interop 690 28.1 Dynamic lookup 691 28.1.1 dynamic关键字 692 28.1.2 访问Python代码 693 28.1.3 访问COM对象 696 28.2 改进的参数传递 698 28.3 完整示例 704 第29章 并行编程 708 29.1任务并行库(TPL) 709 29.1.1并发和并行 710 29.1.2并行编程架构 711 29.2 Parallel 类 713 29.2.1 For方法重载一 715 29.2.2 For方法重载二 716 29.2.3 For方法重载三 722 29.3 Task类和Task类 724 29.4 数据并行 726 29.5 任务并行 730 29.6 TaskFactory类和TaskFactory类 733 29.6.1任务创建选项 737 29.6.2并发选项 753 29.6.3后续任务选项 757 29.7PLINQ 769 附录A Visual Studio 2010快速入门 773 A.1Visual Studio 2010的安装 773 A.2环境参数设置 778 A.3集成开发环境简介 784 A.3.1起始页 784 A.3.2菜单栏 790 A.3.3解决方案资源管理器 792 A.3.4 “属性”选项卡 795 A.3.5工具箱 797 A.3.6可视化设计器 798 A.3.7代码编辑器 799 A.3.8类视图 807 A.3.9智能感知(IntelliSense) 808 A.4使用MSDN 810 A.5生成和调试项目 814 A.6外部工具——IL反汇编程序 821 · · · · · · (收起)文件下载


本站所有压缩文件密码均为dushuxiaowu.com,本站所有资源收集于网络,只做学习和交流使用,版权归原作者所有,若为付费内容,请在下载后24小时之内自觉删除,若作商业用途请购买正版,由于未及时购买和付费发生的侵权行为,与本站无关,本站发布的内容若侵犯到您的权益,请联系邮箱 dushurener#gmail.com 删除,我们将及时处理!
喜欢 (0)