在微软为.NET Framework推出的各种语言中,综合了Visual Basic的高效性和C/C++的强大功能的C#已成为最受青睐的语言。其现代、简单、完全面向对象和类型安全的特性使它成为下一代的分布式应用程序的主流开发语言。
本书对C#的主要功能和核心类库提供了一个快速的参考。本书讲述了各种C#概念和特性,如类型系统、运算符、局部变量、数组、类、结构、枚举、字段、方法、属性、委托、事件、属性标志、系统类、集合、反射和正则表达式等。全书章节段落结构清楚,内容简明,切中要点,反映了作者多年的编程经验。
\r\n
第1章 编译和程序结构\r\n\r\n1.1 基本的C并语法\r\n1.1.1 注释\r\n1.1.2 Main()方法\r\n1.2 编译一个C#程序\r\n1.3 命名空间\r\n1.4 小结\r\n\r\n第2章 C#类型系统\r\n\r\n2.1 通用类型系统\r\n2.1.1 公共语言规范\r\n2.1.2 类型层次结构\r\n2.2 栈和托管堆\r\n2.3 值类型\r\n2.3.1 内建值类型\r\n2.3.2 用户定义的值类型\r\n2.4 引用类型\r\n2.4.1 预定义的引用类型\r\n2.4.2 用户定义的引用类型\r\n2.5 确定类型\r\n2.6 强制类型转换\r\n2.7 装箱和取消装箱\r\n2.8 小结\r\n\r\n第3章 运算符\r\n\r\n3.1 算术运算符\r\n3.2 赋值运算符\r\n3.3 关系运算符\r\n3.4 逻辑运算符\r\n3.5 对象运算符\r\n3.6 间接寻址和地址运算符\r\n3.7 其他运算符\r\n3.8 运算符重载\r\n3.9 小结\r\n\r\n第4章 程序流程和异常处理\r\n\r\n4.1 条件语句\r\n4.1.1 if-else语句\r\n4.1.2 switch语句\r\n4.2 迭代循环\r\n4.2.1 for语句\r\n4.2.2 foreach语句\r\n4.2.3 while语句\r\n4.2.4 do-while语句\r\n4.3 跳转语句\r\n4.3.1 break语句\r\n4.3.2 continue语句\r\n4.3.3 goto语句\r\n4.3.4 return语句\r\n4.4 异常处理\r\n4.5 小结\r\n\r\n第5章 局部变量\r\n\r\n5.1 局部变量声明\r\n5.2 局部变量赋值\r\n5.3 变量的作用域\r\n5.4 小结\r\n\r\n第6章 数组\r\n\r\n6.1 创建一维数组\r\n6.2 创建多维数组\r\n6.3 初始化数组元素\r\n6.4 访问数组元素\r\n6.5 数组属性和方法\r\n6.6 数组引用语义\r\n6.7 小结\r\n\r\n第7章 类\r\n\r\n7.1 定义类\r\n7.2 创建一个类实例\r\n7.3 构造函数\r\n7.3.1 调用基类的构造函数\r\n7.3.2 调用在同一个类中定义的构造函数\r\n7.3.3 静态构造函数\r\n7.4 析构函数和Finalize()方法\r\n7.5 处理托管和非托管资源\r\n7.6 继承\r\n7.7 用户定义类型之间的强制转换\r\n7.8 小结\r\n\r\n第8章 结构\r\n\r\n8.1 结构和类之间的差异\r\n8.2 定义结构\r\n8.3 创建结构实例\r\n8.4 小结\r\n\r\n第9章 接口\r\n\r\n9.1 定义接口\r\n9.2 实现接口\r\n9.3 接口继承\r\n9.4 接口映射\r\n9.5 小结\r\n\r\n第10章 枚举\r\n\r\n10.1 定义一个枚举\r\n10.2 使用枚举\r\n10.3 Enum类的方法\r\n10.4 小结\r\n\r\n第11章 字段\r\n\r\n11.1 实例字段\r\n11.2 静态字段\r\n11.3 访问修饰符\r\n11.4 常量字段\r\n11.5 只读字段\r\n11.6 lock语句\r\n11.7 易变字段\r\n11.8 小结\r\n\r\n第12章 方法\r\n\r\n12.1 定义方法\r\n12.2 退出方法\r\n12.3 实例方法\r\n12.4 静态方法\r\n12.5 访问修饰符\r\n12.6 方法参数\r\n12.6.1 params关键字\r\n12.6.2 ref关键字\r\n12.6.3 out关键字\r\n12.7 虚方法\r\n12.8 抽象方法\r\n12.9 密封方法\r\n12.10 Extern关键字\r\n12.11 方法重载\r\n12.12 方法覆盖\r\n12.13 方法隐藏\r\n12.14 小结\r\n\r\n第13章 属性\r\n\r\n13.1 定义属性\r\n13.1.1 get存取器\r\n13.1.2 set存取器\r\n13.2 实例属性\r\n13.3 静态属性\r\n13.4 小结\r\n\r\n第14章 索引器\r\n\r\n14.1 定义索引器\r\n14.2 使用索引器\r\n14.3 小结\r\n\r\n第15章 委托\r\n\r\n15.1 定义委托\r\n15.2 创建委托实例\r\n15.3 调用委托\r\n15.4 多播委托\r\n15.5 小结\r\n\r\n第16章 事件\r\n\r\n16.1 C#事件模型\r\n16.2 事件委托\r\n16.2.1 .NET Framework类库中的事件委托\r\n16.2.2 用户定义的事件委托\r\n16.2.3 创建事件委托实例\r\n16.3 事件处理程序\r\n16.4 触发事件\r\n16.5 事件存取器\r\n16.6 小结\r\n\r\n第17章 不安全代码\r\n\r\n17.1 指针和C#\r\n17.1.1 指针语法\r\n17.1.2 unsafe关键字\r\n17.1.3 编译不安全代码\r\n17.1.4 fixed关键字\r\n17.2 sizeof运算符\r\n17.3 指针算术运算\r\n17.4 强制转换指针\r\n17.4.1 将指针强制转换为整型类型\r\n17.4.2 将指针强制转换为其他指针类型\r\n17.4.3 空指针\r\n17.5 栈数组\r\n17.6 小结\r\n\r\n第18章 属性标志\r\n\r\n18.1 在代码元素中应用属性标志\r\n18.2 预定义属性标志\r\n18.3 用属性标志进行条件编译\r\n18.4 用户定义属性标志\r\n18.5 使用反射展示属性标志\r\n18.6 小结\r\n\r\n第19章 预处理命令\r\n\r\n19.1 预处理命令\r\n19.2 小结\r\n\r\n第20章 XML文档\r\n\r\n20.1 创建XML文档注释\r\n20.2 提取一个XML文档文件\r\n20.3 小结\r\n\r\n第21章 .NET类的路标\r\n\r\n21.1 .NET Framework中的命名空间\r\n21.1.1 编译器类\r\n21.1.2 与Windows操作系统互操作\r\n21.1.3 核心类\r\n21.1.4 CodeDom类\r\n21.1.5 集合\r\n21.1.6 组件行为\r\n21.1.7 配置\r\n21.1.8 数据访问\r\n21.1.9 调试\r\n21.1.10 目录服务\r\n21.1.11 图形\r\n21.1.12 组件服务\r\n21.1.13 全局化\r\n21.1.14 输入/输出\r\n21.1.15 WMI\r\n21.1.16 消息队列\r\n21.1.17 联网\r\n21.1.18 反射\r\n21.1.19 资源管理\r\n21.1.20 编译器服务\r\n21.1.21 COM互操作性\r\n21.1.22 Remoting\r\n21.1.23 串行化\r\n21.1.24 安全和加密\r\n21.1.25 Windows服务\r\n21.1.26 文本操作\r\n21.1.27 线程\r\n21.1.28 计时器\r\n21.1.29 Web编程\r\n21.1.30 Web服务\r\n21.1.31 Web窗体\r\n21.1.32 Windows窗体\r\n21.1.33 XML\r\n21.2 小结\r\n\r\n第22章 系统类\r\n\r\n22.1 Type类\r\n22.2 0bject类\r\n22.3 String类\r\n22.4 Array类\r\n22.5 Console类\r\n22.6 Convert类\r\n22.7 DateTime结构\r\n22.8 Exception类\r\n22.9 GC类\r\n22.10 Guid结构\r\n22.11 ICloneable接口\r\n22.12 IComparable接口\r\n22.13 IConvertible接口\r\n22.14 IDisposable接口\r\n22.15 MarshalByRefObject类\r\n22.16 Math类\r\n22.17 小结\r\n\r\n第23章 集合\r\n\r\n23.1 ICollection接口\r\n23.2 IComparer接口\r\n23.3 IDictionary接口\r\n23.4 IDictionaryEnumerator接口\r\n23.5 IEnumerable接口\r\n23.6 IEnumerator接口\r\n23.7 IHashCodeProvider接口\r\n23.8 IList接口\r\n23.9 Stack类\r\n23.10 Queue类\r\n23.11 ArrayList类\r\n23.12 Hashtable类\r\n23.13 SortedList类\r\n23.14 CollectionBase类\r\n23.15 DictionaryBase类\r\n23.16 DictionaryEntry结构\r\n23.17 小结\r\n\r\n第24章 输入/输出\r\n\r\n24.1 字节流\r\n24.1.1 Stream类\r\n24.1.2 BufferedStream类\r\n24.1.3 FileStream类\r\n24.1.4 MemoryStream类\r\n24.2 二进制I/O流\r\n24.2.1 BinaryReader类\r\n24.2.2 BinaryWriter类\r\n24.3 字符I/O流\r\n24.3.1 TextReader类\r\n24.3.2 TextWriter类\r\n24.3.3 StreamReader类\r\n24.3.4 StreamWriter类\r\n24.3.5 StringReader类\r\n24.3.6 StringWriter类\r\n24.4 I/O枚举\r\n24.4.1 FileAccess枚举\r\n24.4.2 FileAttributes枚举\r\n24.4.3 FileMode枚举\r\n24.4.4 FileShare枚举\r\n24.5 文件系统操作类\r\n24.5.1 FileSystemInfo类\r\n24.5.2 Directory类\r\n24.5.3 DirectoryInfo类\r\n24.5.4 File类\r\n24.5.5 FileInfo类\r\n24.6 小结\r\n\r\n第25章 反射\r\n\r\n25.1 应用程序层次结构类\r\n25.1.1 Assembly类\r\n25.1.2 Module类\r\n25.2 成员信息类\r\n25.2.1 MemberInfo类\r\n25.2.2 MethodBase类\r\n25.2.3 ConstructorInfo类\r\n25.2.4 EventInfo类\r\n25.2.5 FieldInfo类\r\n25.2.6 ManifestResourceInfo类\r\n25.2.7 MethodInfo类\r\n25.2.8 ParameterInfo类\r\n25.2.9 PropertyInfo类\r\n25.3 System.Reflection的其他成员\r\n25.3.1 Binder类\r\n25.3.2 BindingFlags枚举\r\n25.3.3 IReflect接口\r\n25.3.4 Pointer类\r\n25.4 小结\r\n\r\n第26章 文本操作\r\n\r\n26.1 Encoding类\r\n26.2 ASCIIEncoding类\r\n26.3 UnicodeEncoding类\r\n26.4 UTF7Encoding类\r\n26.5 UTF8Encoding类\r\n26.6 Decoder类\r\n26.7 Encoder类\r\n26.8 StringBuilder类\r\n26.9 小结\r\n\r\n第27章 正则表达式\r\n\r\n27.1 Capture类\r\n27.2 CaptureCollection类\r\n27.3 Group类\r\n27.4 GroupCollection类\r\n27.5 Match类\r\n27.6 MatchCollection类\r\n27.7 Regex类\r\n27.8 RegexOptions枚举\r\n27.9 正则表达式修饰符\r\n27.9.1 匹配量词修饰符\r\n27.9.2 字符匹配修饰符\r\n27.9.3 位置修饰符\r\n27.9.4 大小写修饰符\r\n27.9.5 组合修饰符\r\n27.10 小结\r\n\r\n第28章 线程\r\n\r\n28.1 同步的基础知识\r\n28.2 应用程序域\r\n28.3 Thread类\r\n28.4 ThreadStart委托\r\n28.5 ThreadPriority枚举\r\n28.6 ThreadState枚举\r\n28.7 Interlocked类\r\n28.8 Monitor类\r\n28.9 WaitHandle类\r\n28.10 Mutex类\r\n28.11 ReaderWriterLock类\r\n28.12 ThreadPool类\r\n28.13 Timeout类\r\n28.14 Timer类\r\n28.15 小结\r\n\r\n附录A C#关键字\r\n\r\n附录B 命名约定\r\n\r\nB.1 大写样式\r\nB.1.1 Pascal\r\nB.1.2 Camel\r\nB.2 一般的命名原则\r\nB.2.1 大小写敏感性\r\nB.2.2 缩写\r\nB.2.3 特定于代码元素的命名原则