第1章 .NET概述 1
1.1 .NET 1
1.2 .NET平台的组成 1
1.3 .NET Framework 2
1.3.1 公共语言运行时 3
1.3.2 .NET Framework类库和命名空间 4
1.4 C#与其他编程语言的比较 5
1.4.1 与C、C++的比较 5
1.4.2 与Java的比较 5
1.5 Visual Studio 2008 5
1.5.1 Visual Studio 2008的安装 6
1.5.2 使用Visual Studio 2008 8
1.6 小结 13
1.7 习题 13
第2章 数据类型、运算符及其表达式 15
2.1 C#基本语法 15
2.1.1 语句 15
2.1.2 空白 15
2.1.3 注释 16
2.2 变量和常量 18
2.2.1 变量 18
2.2.2 常量 19
2.3 值类型 20
2.3.1 简单值类型 20
2.3.2 枚举类型 23
2.3.3 结构体类型 25
2.4 引用类型 27
2.5 运算符 27
2.5.1 算术运算符 27
2.5.2 赋值运算符 28
2.5.3 关系运算符 28
2.5.4 逻辑运算符 28
2.5.5 条件运算符 29
2.5.6 typeof运算符 29
2.6 小结 29
2.7 习题 29
第3章 控制语句 31
3.1 流程控制概述 31
3.2 分支语句 32
3.2.1 if语句 32
3.2.2 switch语句 34
3.3 循环结构 35
3.3.1 while循环语句 36
3.3.2 do-while循环 37
3.3.3 for循环 38
3.3.4 foreach循环 40
3.4 跳转语句 41
3.4.1 break语句 41
3.4.2 continue语句 42
3.4.3 return语句 42
3.4.4 goto语句 43
3.5 预处理指令 44
3.5.1 region预处理指令 45
3.5.2 定义预处理指令 45
3.5.3 条件预处理指令 45
3.5.4 warning和error预处理指令 46
3.6 小结 47
3.7 习题 47
3.8 综合项目——猜数字游戏 48
3.8.1 项目分析 48
3.8.2 项目设计 49
3.8.3 项目实现 50
第4章 面向对象程序设计基础 55
4.1 类与对象概述 55
4.2 类的定义 56
4.3 类的使用——实例化及使用对象 57
4.3.1 声明对象 57
4.3.2 实例化类得到对象 58
4.3.3 访问对象 58
4.4 访问控制 59
4.4.1 访问修饰符public 59
4.4.2 访问修饰符private 59
4.4.3 访问修饰符protected 59
4.4.4 访问修饰符internal 60
4.5 类的封装性与属性 60
4.5.1 类的封装性 60
4.5.2 属性 60
4.5.3 方法 62
4.6 方法的重载 63
4.7 类的构造函数与析构函数 63
4.8 静态成员 66
4.9 委托和事件 68
4.10 应用实例 70
4.11 小结 73
4.12 小题 73
第5章 面向对象提高 74
5.1 封装、继承、多态 74
5.1.1 封装 74
5.1.2 继承 74
5.1.3 多态 78
5.2 抽象类、密封类与接口 82
5.2.1 抽象类 82
5.2.2 密封类 83
5.2.3 接口 84
5.3 this和base关键字 87
5.4 异常处理 90
5.5 小结 91
5.6 习题 91
5.7 综合实例项目——汽车公司 93
5.7.1 项目分析 93
5.7.2 项目设计 93
5.7.3 项目实现 94
第6章 集合与泛型 99
6.1 数组 99
6.2 集合 100
6.2.1 列表 101
6.2.2 队列 103
6.2.3 哈希表 105
6.2.4 栈 107
6.2.5 有序表 109
6.3 泛型 111
6.3.1 List<T> 111
6.3.2 Stack<T> 113
6.4 小结 114
6.5 习题 114
第7章 常用类和数据类型 115
7.1 字符串 115
7.1.1 System.String类 116
7.1.2 System.Text.StringBuilder类 121
7.2 日期时间 125
7.2.1 DateTime结构 126
7.2.2 TimeSpan结构 128
7.3 System.Object类 129
7.4 随机数对象 130
7.5 类型之间的转换 131
7.6 小结 134
7.7 习题 134
第8章 Windows窗体和控件 135
8.1 窗体概述 135
8.1.1 创建窗体应用程序 135
8.1.2 设置窗体的属性 136
8.1.3 窗体的事件 136
8.1.4 窗体的方法 137
8.1.5 特殊窗体的创建 137
8.2 窗体控件 138
8.2.1 窗体控件概述 138
8.2.2 窗体控件属性 138
8.2.3 常用的窗体控件 139
8.3 窗体的菜单 154
8.4 鼠标键盘事件 155
8.4.1 鼠标操作 155
8.4.2 键盘操作 157
8.5 对话框控件 158
8.5.1 使用MessageBox对话框 158
8.5.2 使用FontDialog对话框 159
8.5.3 使用ColorDialog对话框 161
8.5.4 使用FolderBrowserDialog对话框 162
8.6 SDI和MDI应用程序 163
8.7 小结 165
8.8 习题 165
第9章 GDI+ 166
9.1 GDI+概述 166
9.2 C#的图形绘制结构和类 166
9.2.1 常用绘图结构 166
9.2.2 Graphics类 167
9.2.3 Pen类 168
9.2.4 Brush类及Brush的派生类 169
9.2.5 Color类 170
9.2.6 Font类 171
9.3 绘制图形 171
9.3.1 绘制直线 171
9.3.2 绘制矩形 172
9.3.3 绘制圆和椭圆 173
9.3.4 绘制文本 173
9.3.5 绘制圆弧 175
9.3.6 绘制曲线 175
9.3.7 绘制多边形 175
9.3.8 绘制图标 176
9.3.9 绘制路径 176
9.3.10 绘制扇形 176
9.4 填充图形和清除方法 177
9.5 位图处理 178
9.6 坐标变换 178
9.7 Paint事件 181
9.8 GDI+应用实例 183
9.9 小结 192
9.10 习题 193
9.11 综合实例项目——小助手 193
9.11.1 项目分析 193
9.11.2 项目设计 193
9.11.3 项目实现 195
第10章 文件管理 203
10.1 System.IO命名空间概述 203
10.2 Windows文件系统 204
10.2.1 Directory类与DirectoryInfo类 205
10.2.2 File类与FileInfo类 207
10.2.3 Path类 210
10.2.4 文件属性 212
10.3 读写文件 213
10.3.1 流概述 213
10.3.2 读写文本文件 214
10.3.3 读写二进制文件 216
10.4 文件对话框 218
10.4.1 打开文件对话框 219
10.4.2 保存文件对话框 220
10.5 小结 221
10.6 习题 222
第11章 线程 223
11.1 线程概述 223
11.2 System.Threading.Thread类 224
11.3 线程状态与线程优先级 226
11.3.1 线程状态 226
11.3.2 线程优先级 227
11.4 线程间通信 229
11.5 线程池 230
11.6 线程锁 232
11.6.1 线程同步 232
11.6.2 死锁 235
11.7 进程操作 238
11.8 小结 239
11.9 习题 240
11.10 综合项目——幸运之星 240
11.10.1 项目分析 240
11.10.2 项目设计 240
11.10.3 项目实现 241
第12章 ADO.NET 247
12.1 ADO.NET简介 247
12.2 ADO.NET的结构 247
12.2.1 数据提供者 248
12.2.2 数据集 249
12.3 使用ADO.NET对象连接SQL Server数据库 250
12.3.1 DataReader读取数据 250
12.3.2 数据集读取数据 252
12.3.3 设置连接属性 253
12.4 使用数据绑定控件 257
12.5 更新数据库 259
12.5.1 添加数据记录 259
12.5.2 修改数据记录 261
12.5.3 删除数据记录 262
12.6 小结 264
12.7 习题 264
第13章 WEB编程 266
13.1 ASP.NET概述 266
13.2 ASP.NET网页 267
13.3 服务器控件 270
13.3.1 HTML服务器控件 270
13.3.2 Web服务器控件 271
13.4 验证控件 273
13.5 用户控件 276
13.6 内置对象 277
13.7 使用ADO.NET显示数据库信息 283
13.8 使用AJAX 285
13.9 小结 287
13.10 习题 287
13.11 综合实例项目——图书管理系统 289
13.11.1 项目分析 289
13.11.2 项目设计 289
13.11.3 项目实现 293
参考文献 301