前言
第一章C#语言概述
1.1 C#言出现的历史背景
1.2 C#语言的特点
1.2.1 生产力和安全
1.2.2 功能、表现和灵活性
1.3 一个“Hello,world”程序
1.4 命令行参数
1.5 C#的自动内存管理
第二章数据类型和变量
2.1 值类型
2.1.1 默认值
2.1.2 简单类型
2.1.3 整数类型
2.1.4 浮点类型
2.1.5 小数类型
2.1.6 布尔类型
2.1.7 枚举类型
2.1.8字符类型
2.2 参考类型
2.3 入盒和出盒
2.3.1 入盒变换
2.3.2 出盒变换
2.4 统一的系统类型
2.5 变量
2.5.1 变量的种类.
2.5.2 确定性分配
2.6 类型转换
2.6.1 隐式类型转换
2.6.2 显式类型转换
2.6.3 自定义转换
第三章 表达式和操作符语义
3.1 表达式类型.
3.2 操作
3.2.1 操作的优先级
3.2.2 操作重载
3.2.3 数字转换
3.3 函数成员
3.3.1 参数序列
3.3.2 函数调用
3.4 一元表达式
3.4.1 算术表达式
3.4.2 移位操作
3.5 关系表达式
3.5.1 整数比较操作
3.5.2 浮点比较操作
3.5.3 小数比较操作
3.5.4 布尔比较操作
3.5.5 枚举比较操作
3.5.6 参考类型比较操作
3.5.7 字符串比较操作
3.5.8 代表比较操作
3.5.9 is操作
3.6 逻辑操作
3.6.1 整数逻辑操作
3.6.2 枚举逻辑操作
3.6.3 布尔逻辑操作
3.7 条件逻辑操作
3.7.1 布尔条件逻辑操作
3.7.2 自定义条件逻辑操作
3.8 条件操作
3.9 赋值操作
3.9.1 简单赋值操作
3.9.2 复杂赋值操作
3.10 常量表达式
3.11 操作符重载
第四章语句
4.1结束点和可达性
4.2语句块(block)
4.3空语句
4.4labeled语句
4.5声明语句
4.5.1局部声明语句
4.5.2局部常量声明
4.6表达式语句
4.7选择语句
4.7.1if语句
4.7.2switCh语句
4.8循环语句
4.8.1while语句
4.8.Zdo—while语句
4.8.3for语句
4.8.4foreach语句
4.9跳转语句
4.9.1break语句
4.9.2continue语句
4.9.3goto语句
4.9.4return语句
4.9.5throw语句
4.10Try语句
4.10.1try—catch语句
4.10.2try—finally语句
4.10.3try—catch—finally语句
4.11checked和unchecked语句
4.12lock语句
第五章数组和结构
5.1数组
5.2结构
第六章类
6.1类声明
6.2类成员
6.3常量
6.4域
6.5 方法
6.5.1 方法参数
6.5.2 虚方法
6.5.3 重载方法
6.5.4 抽象方法
6.5.5 外部方法
6.6 性质
6.6.1 静态性质
6.6.2 性质存取符
6.6.3 虚拟、重载和抽象
6.6.4 两个实例
6.7 事件
6.8 索引
6.9 操作
6.9.1 一元操作
6.9.2 二元操作
6.9.3 转换操作
6.10 实例构造器
6.10.l 构造器初始化
6.10.2 构造器的调用
6,10.3 缺省构造器
6.10.4 私有构造器
6.11 析构器
6.12 静态构造器
第七章 属性、代表和事件
7.1 属性
7.1.1 属性类
7.1.2 属性实例
7.1.3 系统保留属性
7.2 代表
7.3 事件
第八章 接口、名空间和版本
8.1 接口
8.1.1 接口成员
8.1.2 接口成员的全名
8.1.3 接口的实现
8.1.4 显式接口实现
8.1.5 接口映射
8.1.6 接口实现的继承
8.1.7 接口的再实现
8.1.8 抽象类和接口
8.2 名空间
8.2.1 编译单元
8.2.2 名空间的声明
8.2、3 Using指示符
8.2.4 名空间的使用
8.3 版本
第九章条件编译和文档注释
9.l 条件编译
9.1.l 预处理器的使用
9.1.2 Conditional属性
9.2 XML中的文档注释
9.2.1 描述元素
9.2.2 添加各注和表单
9.2.3 实例
9.2.4 描述参数
9.2.5 描述属性
9.2.6 编译文档
第十章安全机制和不安全代码
10.1 安全机制
10.2 不安全代码
附录 A
附录 B
B.1 C#堆栈实现
B.2 用C#写的简单的留言本
B.3 使用C#写DES加密程序的framework
B.4 用C#查询域名