C#图解教程

资料百科

《C#图解教程》以图文并茂的形式,用朴实简洁的文来自字,并辅之以总搞围大量表格和代码示例,精炼而全面地阐述了最新版C#语言的各种特性,使读者能够快速理解、学习和使用C#。 

  • 书名 C#图解教程
  • 作者 (美国)(DanielSolis)索利斯
  • 类别 计算机
  • 译者 苏林
  • 出版社 人民邮电出版社

作者简介

  Daniel Solis 资深软件工程师和技术顾问.有20余年令入置就年导损布土开发经验,曾为微软和IBM等大公司提供技术咨询。他拥有加州大学计算机科学硕士、生物学和英文学士学位。同时,他也是一位杰出的导师。在独占居映雷合民赵旧科依美国和欧洲从事编程语言、Wi饭银仅ndows程序设计和Unix底层技术相关的教学培训工作多年。

编辑推荐

  《C#图解教程》是一本经典的C#入门书,不仅适合没有任何编程语言基础的初级读者,而且还是有VB、C++等语言基础的C#初学者的最佳选择。

  作为.NET平台上最主要的编程语言,C#在不断地改进和来自完善,功能越来越强大。当然,复杂性也随之增加。令很多初学者不得其门而入。

  如何才能让更多人轻松地学习市宣和掌握C#呢?《C#图解教程》作者总结了自己数十年360百科软件开发和教学培训经验,创造了一种全新的可视化叙述方式。在书中,他通过大量图、表和代码,与简洁的文字完美结合,从底层运行原理的角度阐述了最新版C#和NET的所有基本特性,并讲解了LINQ、异步编程和反射等高级特性,使原本非常复杂的知识点变得简单明了、清晰透彻,行远让人耳目一新,大大降低了学习难度。阅读《C#图解教程》时,你仿佛置身于课堂。看着一位经验丰富的老师拿着粉笔画图演示,娓娓道来。《C#图解教程》原版一经问世.就赢得广泛好评,被誉为C#入门经典著作。不仅适合自学,也是课堂教学的首选。

目录

  第1章C#和.NET框架

  1.1在.NET之前

  1.1.120世纪90年代后期的Windows编程

  1.1.2下一代平台的目标

  1.2进入Microsoft.NET

  1.2.1.NET框架的组成

  1.2.2大大改进的编程环境

  1.3编译成CIL

  1.4编译成本机代码并执行

  1.5CLR

  金弦活散全全战脸维酸英1.6CLI

  1.7缩写回顾

  第2章C#编程概述

  2.1一个简单的C#程序

  2.2标识符和关键字

  2.2.1命名约定

  2.2.2关键字

  来自2.3Main:程序的起始点

  2.4空白

  2.5语句

  2.5.1简单语句

  2.5.2块

  2.6从程序中输出文本

  2.6复妈密燃.1Write

  2.6.2WriteLine

  2.6.3格式字符串

  2.6.4多重标记和率白北委严课额乱节选个

  2.7注释

  2.7.1关于注释的补充

  2.7.2给井前满按海倍文档注释

  2.7.3注释类型总结

  第3章类型、存储和变量

  3.1C#程序是一组类型声明

  3.2类型是一种模板

  3.3实例化类型

  3.4数据成员和函数成

  3.5预定义类型

  3.6用户定义类创弦模知应础触庆叫排乡

  3.7栈和堆

  3.7.1栈

  3.7.2堆

  3.8值类型和引用类型

  3.8.1存储引用类型对象的成员

  3.8.2C#类型的分类

  3.9变量

  3.9.1变量声明

  3.9.2多重变量声明

  3.9.机预3使用变量的值

  第4章类:基础

  4.1类的概述

  4.2程序和类:一个快速的示例

  4.3声明类

  4.4类成员

  4.4.实工我诉密1字段

  4.4.队并使烟头混施弦没切情2显式和隐式字段初始化

  360百科4.4.3声明多个字段

  4.4.4方法

  4.5创建变量和类的实例

  4.6为数据分配值皮内存

  4.7实例成员

  4.8访问修饰符

  4.9从类的内部访问成员

  4.10从类的外部访问成员

  4.11综合应用

  第5章方

  5.1方法的结构

  5.2本地变量

  5.2.1类型推断和var关键

  5.2.2纸夜测占鲜述宁识兴嵌套块中的本地变量

  5.3本地常量

  5.4方法调用

 派待款整元看调 5.5返回值

  5.6参数

  5.6.1形参

  5.6.2实参

  5.6.3带输入参数的方法示例

  5.7值参数

  5.8引用参数

  5.9输出参数

  5.10参数数组

  5.10.1方法调用

  5.10.2数组作实参

  5.11参数类型总结

  5.12栈帧

  5.13递归

  5.14方法重载

  第6章类进阶

  6.1类成员

  6.2实例类成员

  6.3静态字好福事江端温

  6.4从类的外部访问静态成员

  6.4.1静态字段示例

  6.4.2静态成员的生存期

  6.5静态函数成员

  6.6其他静态类成员类型

  6.7成员常量

  6.8属性

  6.8.1属海职张矛培台显性声明和访问器

  6.8.2属性示例

  6.8.3使用属性

  6.8.4属性攻器动和关联字段

  6.8.5执行其他计算

  6.8.6只依受歌菜变兰群景唱背施读和只写属性

  6.8.7计算只读属性示例

  6.8.8属性和数据库示例

厂认困  6.8.9自动实现属性

  6.8.10静态属性

  6.9实例构造函数

  6.9.1带参数的构造函数

  6.9.2默认构造函数

  6.10静态构造函数

  6.10.1静态构造函数示例

  6.10.2构造函数的可访问性

  6.11对象初始化列表

  6.12析构函数

  6.12.1调用析构函数

  6.12.2标准清理模式

  6.13比较构造函数和析构函数

  6.14readonly修饰符

  6.15this关键字

  6.16索引

  6.16.1什么是索引

  6.16.2索引和属性

  6.16.3声明索引

  6.16.4set访问器

  6.16.5get访问器

  6.16.6关于索引的补充

  6.16.7为Employee示例声明索引

  6.16.8另一个索引示例

  6.16.9索引重载

  6.17访问器的访问修饰符

  6.18分部类和分部类型

  第7章类和继承

  7.1类继承

  7.2访问继承的成员

  7.3隐藏基类的成员

  7.4基类访问

  7.5使用基类的引用

  7.5.1虚方法和覆写方法

  7.5.2覆写标记为override的方法

  7.6构造函数的执行

  7.6.1构造函数初始化语句

  7.6.2类访问修饰符

  7.7程序集间的继承

  7.8成员访问修饰符

  7.8.1访问成员的区域

  7.8.2公有成员的可访问性

  7.8.3私有成员的可访问性

  7.8.4受保护成员的可访问性

  7.8.5内部成员的可访问性

  7.8.6受保护内部成员的可访问性

  7.8.7成员访问修饰符的总结

  7.9抽象成员

  7.10抽象类

  7.11密封类

  7.12静态类

  7.13扩展方法

  7.14外部方法

  第8章表达式和运算符

  8.1表达式

  8.2字面量

  8.2.1整数字面量

  8.2.2实数字面量

  8.2.3字符字面量

  8.2.4字符串字面量

  8.3求值顺序

  8.3.1优先级

  8.3.2结合性

  8.4简单算术运算符

  8.5求余运算符

  8.6关系比较运算符和相等比较运算符

  8.7递增运算符和递减运算符

  8.8条件逻辑运算符

  8.9逻辑运算符

  8.10移位运算符

  8.11赋值运算符

  8.12条件运算符

  8.13一元算术运算符

  8.14用户定义类型转换

  8.15运算符重载

  8.15.1运算符重载的限制

  8.15.2运算符重载的示例

  8.16typeof运算符

  第9章语句

  9.1什么是语句

  9.2表达式语句

  9.3控制流语句

  9.4if语句

  9.5if…else语句

  9.6switch语句

  9.6.1分支示例

  9.6.2switch语句的补充

  9.6.3分支标签

  9.7while循环

  9.8do循环

  9.9for循环

  9.9.1for语句中变量的有效范围

  9.9.2初始化语句和迭代表达式中的多表达式

  9.10跳转语句

  9.10.1break语句

  9.10.2continue语句

  9.11标签语句

  9.11.1标签

  9.11.2标签语句的范围

  9.12goto语句

  9.13using语句

  9.13.1资源的包装使用

  9.13.2using语句的示例

  9.13.3多个资源和嵌套

  9.13.4using语句的另一种形式

  9.14其他语句

  第10章命名空间和程序集

  10.1引用其他程序集

  10.2命名空间

  10.2.1命名空间名称

  10.2.2命名空间的补充

  10.2.3命名空间跨文件伸展

  10.2.4嵌套命名空间

  10.3using指令

  10.3.1using命名空间指令

  10.3.2using别名指令

  10.4程序集的结构

  10.5程序集标识符

  10.6强命名程序集

  10.7程序集的私有方式部署

  10.8共享程序集和GAC

  10.8.1把程序集安装到GAC

  10.8.2GAC内的并肩执行

  10.9配置文件

  10.10延迟签名

  第11章异常

  11.1什么是异常

  11.2try语句

  11.3异常类

  11.4catch子句

  11.4.1使用特定catch子句的示例

  11.4.2catch子句段

  11.5finally块

  11.6为异常寻找处理代码

  11.7更进一步搜索

  11.7.1一般法则

  11.7.2搜索调用栈的示例

  11.8抛出异常

  11.9不带异常对象的抛出

  第12章结构

  12.1什么是结构

  12.2结构是值类型

  12.3对结构赋值

  12.4构造函数和析构函数

  12.4.1实例构造函数

  12.4.2静态构造函数

  12.4.3构造函数和析构函数的总结

  12.5字段初始化是不允许的

  12.6结构是密封的

  12.7装箱和取消装箱

  12.8结构作为返回类型和参数

  12.9关于结构的附加信息

  第13章枚举

  13.1枚举

  13.1.1设置底层类型和显式值

  13.1.2隐式成员编号

  13.2位标志

  13.2.1Flags特性

  13.2.2使用位标志的示例

  13.3关于枚举的补充

  第14章数组

  14.1数组

  14.1.1定义

  14.1.2重要细节

  14.2数组的类型

  14.3数组是对象

  14.4一维数组和矩形数组

  14.5实例化一维数组或矩形数组

  14.6访问数组元素

  14.7初始化数组

  14.7.1显式初始化一维数组

  14.7.2显式初始化矩形数组

  14.7.3初始化矩形数组的语法点

  14.7.4快捷语法

  14.7.5隐式类型数组

  14.7.6综合内容

  14.8交错数组

  14.8.1声明交错数组

  14.8.2快捷实例化

  14.8.3实例化交错数组

  14.8.4交错数组中的子数组

  14.9比较矩形数组和交错数组

  14.10foreach语句

  14.10.1迭代变量是只读的

  14.10.2foreach语句和多维数组

  14.11数组协变

  14.12数组继承的有用成员

  14.13比较数组类型

  第15章委托

  15.1什么是委托

  15.2声明委托类型

  15.3创建委托对象

  15.4赋值委托

  15.5组合委托

  15.6为委托增加方法

  15.7从委托移除方法

  15.8调用委托

  15.9委托的示例

  15.10调用带返回值的委托

  15.11调用带引用参数的委托

  15.12匿名方法

  15.12.1使用匿名方法

  15.12.2匿名方法的语法

  15.12.3变量和参数的作用域

  15.13Lambda表达式

  第16章事件

  16.1事件和委托相似

  16.2源代码组件概览

  16.3声明事件

  16.3.1事件是成员

  16.3.2委托类型和EventHandler

  16.4触发事件

  16.5订阅事件

  16.6标准事件的用法

  16.6.1使用EventArgs类

  16.6.2通过扩展EventArgs来传递数据

  16.6.3使用自定义委托

  16.7MyTimerClass代码

  16.8事件访问器

  第17章接口

  17.1什么是接口

  17.2声明接口

  17.3实现接口

  17.4接口是引用类型

  17.5接口和as运算符

  17.6实现多个接口

  17.7实现具有重复成员的接口

  17.8多个接口的引用

  17.9派生成员作为实现

  17.10显式接口成员实现

  17.11接口可以继承接口

  第18章转换

  18.1什么是转换

  18.2隐式转换

  18.3显式转换和强制转换

  18.4转换的类型

  18.5数字的转换

  18.5.1隐式数字转换

  18.5.2溢出检测上下文

  18.5.3显式数字转换

  18.6引用转换

  18.6.1隐式引用转换

  18.6.2显式引用转换

  18.6.3有效显式引用转换

  18.7装箱转换

  18.8拆箱转换

  18.9用户自定义转换

  18.9.1用户自定义转换的约束

  18.9.2用户自定义转换的示例

  18.9.3计算用户自定义转换

  18.9.4多步用户自定义转换的示例

  18.10is运算符

  18.11as运算符

  第19章泛型

  19.1什么是泛型

  19.2C#中的泛型

  19.3泛型类

  19.4声明泛型类

  19.5创建构造类型

  19.6创建变量和实例

  19.6.1使用泛型的栈的示例

  19.6.2比较泛型和非泛型栈

  19.7类型参数的约束

  19.7.1Where子句

  19.7.2约束类型和次序

  19.8泛型结构

  19.9泛型接口

  19.9.1使用泛型接口的示例

  19.9.2泛型接口的实现必须唯一

  19.10泛型委托

  19.11泛型方法

  19.11.1声明泛型方法

  19.11.2调用泛型方法

  19.11.3泛型方法的示例

  19.12扩展方法和泛型类

  第20章枚举数和迭代器

  20.1枚举数和可枚举类型

  20.1.1使用foreach语句

  20.1.2枚举数类型

  20.2使用IEnumerator接口

  20.3IEnumerable接口

  20.4不实现接口的枚举数

  20.5泛型枚举接口

  20.6IEnumeratorT接口

  20.7IEnumerableT接口

  20.8迭代器

  20.8.1迭代器块

  20.8.2使用迭代器来创建枚举数

  20.8.3使用迭代器来创建可枚举类型

  20.9常见迭代器模式

  20.10产生可枚举类型和枚举数

  20.11产生多个可枚举类型

  20.12产生多个枚举数

  20.13迭代器实质

  第21章介绍LINQ

  21.1什么是LINQ

  21.2LINQ提供程序

  21.3查询语法和方法语法

  21.4查询变量

  21.5查询表达式的结构

  21.5.1from子句

  21.5.2join子句

  21.5.3什么是联结

  21.5.4查询主体中的from…let…where片段

  21.5.5orderby子句

  21.5.6select…group子句

  21.5.7查询中的匿名类型

  21.5.8group子句

  21.5.9查询延续

  21.6标准查询运算符

  21.6.1查询表达式和标准查询运算符

  21.6.2标准查询运算符的签名

  21.6.3委托作为参数

  21.6.4LINQ预定义的委托类型

  21.6.5使用委托参数的示例

  21.6.6使用Lambda表达式参数的示例

  21.7LINQtoXML

  21.7.1标记语言

  21.7.2XML基础

  21.7.3XML类

  21.7.4使用XML树的值

  21.7.5使用XML属性

  21.7.6节点的其他类型

  21.7.7使用LINQtoXML的LINQ查询

  第22章异步编程简介

  22.1进程、线程以及异步编程

  22.1.1多线程处理带来的问题

  22.1.2多线程处理的复杂度

  22.2异步编程模式

  22.3BeginInvoke和EndInvoke

  22.3.1等待--直到结束模式

  22.3.2AsyncResult类

  22.3.3轮询模式

  22.3.4回调模式

  22.4计时器

  第23章预处理指令

  23.1什么是预处理指令

  23.2基本规则

  23.3#define和#undef指令

  23.4条件编译

  23.5条件编译结构

  23.6诊断指令

  23.7行号指令

  23.8区域指令

  23.9#pragmawarning指令

  第24章反射和特性

  24.1元数据和反射

  24.2Type类

  24.3获取Type对象

  24.4什么是特性

  24.5应用特性

  24.6预定义的保留的特性

  24.6.1Obsolete特性

  24.6.2Conditional特性

  24.6.3预定义的特性

  24.7有关应用特性的更多内容

  24.7.1多个特性

  24.7.2其他类型的目标

  24.7.3全局特性

  24.8自定义特性

  24.8.1声明自定义特性

  24.8.2使用特性构造函数

  24.8.3指定构造函数

  24.8.4使用构造函数

  24.8.5构造函数中的位置参数和命名参数

  24.8.6限制特性的使用

  24.8.7自定义特性的最佳实践

  24.9访问特性

  24.9.1使用IsDefined方法

  24.9.2使用GetCustomAttribute方法

  第25章其他主题

  25.1概述

  25.2字符串

  25.2.1使用StringBuilder类

  25.2.2格式化数字字符串

  25.3把字符串解析为数据值

  25.4可空类型

  25.4.1创建可空类型

  25.4.2为可空类型赋值

  25.4.3使用可空用户自定义类型

  25.5Main方法

  25.6文档注释

  25.6.1插入文档注释

  25.6.2使用其他XML标签

  25.7嵌套类型

  25.7.1嵌套类的示例

  25.7.2可见性和嵌套类型

  ……

标签:
声明:此文信息来源于网络,登载此文只为提供信息参考,并不用于任何商业目的。如有侵权,请及时联系我们:yongganaa@126.com

评论留言

我要留言

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

声明:此文信息来源于网络,登载此文只为提供信息参考,并不用于任何商业目的。如有侵权,请及时联系我们:yongganaa@126.com