第1章 创建C#开发环境 1
1.1 C#语言简介 2
1.2 .NET Framework概述 2
1.3程序集 4
1.4配置.NET Framework环境 4
1.4.1安装Visual Studio 2010 5
1.4.2熟悉Visual Studio 2010 7
1.5用C#创建.NET应用程序 8
1.5.1设置应用程序的属性 8
1.5.2使用C#创建控制台程序 8
1.5.3使用C#创建Windows窗体程序 11
1.6命名空间 14
1.6.1命名空间的结构 15
1.6.2定义和引用命名空间 16
1.6.3引用命名空间 17
1.7实践案例:使用控制台程序模拟登录系统 18
1.8动手练一练 18
1.8.1练习题 18
1.8.2上机实践 19
第2章 C#编程基础 20
2.1数据类型 21
2.1.1值类型 21
2.1.2引用类型 24
2.1.3数据类型转换 25
2.2变量和常量 26
2.2.1变量 26
2.2.2常量 28
2.3运算符 28
2.3.1算术运算符 29
2.3.2赋值运算符 30
2.3.3关系运算符 32
2.3.4逻辑运算符 33
2.3.5特殊运算符 33
2.3.6条件运算符 34
2.3.7运算符的优先级 34
2.4装箱和拆箱 35
2.4.1装箱 35
2.4.2拆箱 36
2.5 C#关键字 36
2.6实践案例:逻辑运算符的真值表 37
2.7动手练一练 39
2.7.1练习题 39
2.7.2上机实践 40
第3章 控制语句 41
3.1条件语句 42
3.1.1 if语句 42
3.1.2 if else语句 43
3.1.3 if else if else语句 44
3.1.4嵌套if语句 45
3.1.5 switch语句 47
3.2循环语句 49
3.2.1 for循环语句 49
3.2.2 while循环语句 50
3.2.3 do while循环语句 51
3.2.4 foreach语句 52
3.3跳转语句 53
3.3.1 break语句 53
3.3.2 continue语句 54
3.3.3 return语句 55
3.3.4 goto语句 55
3.4实践案例:编写简单的帮助系统 57
3.5动手练一练 59
3.5.1练习题 59
3.5.2上机实践 61
第4章 数组 62
4.1一维数组 63
4.1.1声明数组 63
4.1.2初始化数组 63
4.1.3访问数组 64
4.1.4遍历数组 65
4.2复合数组 66
4.2.1二维数组 66
4.2.2多维数组 67
4.2.3锯齿数组 68
4.3数组操作 69
4.3.1 Array类概述 69
4.3.2 Array类的简单操作 69
4.3.3复制数组 71
4.3.4对数组排序 73
4.4实践案例:拆分锯齿数组 76
4.5动手练一练 77
4.5.1练习题 77
4.5.2上机实践 78
第5章 面向对象的基础 79
5.1面向对象编程 80
5.2类 81
5.2.1定义类 81
5.2.2类的字段 82
5.2.3类的属性 83
5.3对象 84
5.3.1创建对象 84
5.3.2对象的使用 85
5.3.3对象的生存周期 86
5.3.4对象的清理 87
5.4方法 87
5.4.1无参方法 87
5.4.2有参方法 88
5.4.3方法的重载 89
5.4.4静态方法 90
5.5构造函数 92
5.6析构函数 94
5.7访问修饰符 96
5.8实践案例:制作简单的计算器 98
5.9动手练一练 100
5.9.1练习题 100
5.9.2上机实践 101
第6章 面向对象的关键技术 102
6.1封装 103
6.2继承 103
6.2.1继承的意义 103
6.2.2如何定义派生类 104
6.2.3作用域和继承 106
6.2.4覆盖基类成员的方法 107
6.2.5 this关键字的使用 108
6.3 base关键字和方法重写 109
6.3.1方法重写 109
6.3.2 base关键字 111
6.4抽象类和密封类 112
6.4.1抽象类 112
6.4.2密封类 113
6.5多态 114
6.5.1什么是多态 114
6.5.2多态的实现 115
6.6接口 117
6.6.1接口的定义和实现 117
6.6.2接口与继承 118
6.7实践案例:实现购物系统中的用户信息 120
6.8动手练一练 122
6.8.1练习题 122
6.8.2上机实践 123
第7章 集合 124
7.1 C#内置集合 125
7.1.1 ArrayList集合 125
7.1.2使用堆栈(Stack集合) 127
7.1.3使用队列(Queue集合) 128
7.1.4使用Hashtable集合 129
7.1.5使用BitArray集合 131
7.1.6使用SortedList集合 133
7.2自定义集合 134
7.2.1声明集合 134
7.2.2为集合添加对象 137
7.2.3删除集合中的元素 139
7.2.4在集合中检索元素 140
7.3实践案例:模拟树形菜单 141
7.4动手练一练 145
7.4.1练习题 145
7.4.2上机实践 146
第8章 字符串和正则表达式 147
8.1字符串概述 148
8.2 String类 148
8.2.1 String类的构造函数 148
8.2.2 String类的属性和索引器 150
8.2.3比较字符串 150
8.2.4定位与查找字符串 153
8.2.5提取字符串 154
8.2.6拆分字符串 155
8.2.7 String类中的其他常用方法 156
8.3 StringBuilder类 159
8.3.1追加字符串 159
8.3.2使用AppendFormat对字符串进行处理 160
8.3.3插入字符串 161
8.3.4替换字符串 162
8.4正则表达式 163
8.4.1正则表达式的语法规则 163
8.4.2基本类 165
8.4.3匹配、组合和捕获 167
8.5格式化字符 168
8.6实践案例:字符串操作系统 171
8.7动手练一练 175
8.7.1练习题 175
8.7.2上机实践 177
第9章 异常处理 178
9.1异常概述 179
9.2异常处理 179
9.3异常类 182
9.3.1基于类型的筛选异常 183
9.3.2 System.Exception类 184
9.3.3内部异常类 186
9.4自定义的异常类 190
9.5实践案例:模拟邮箱注册 191
9.6动手练一练 194
9.6.1练习题 194
9.6.2上机实践 195
第10章 创建Windows窗体应用程序 196
10.1 Windows窗体控件概述 197
10.2基本控件 197
10.2.1 TextBox控件 197
10.2.2 MaskedTextBox控件 199
10.3显示信息的控件 200
10.3.1 Label控件 200
10.3.2 LinkLabel控件 201
10.4图形和图像类控件 203
10.4.1 ImageList控件 203
10.4.2 PictureBox控件 205
10.5按钮类控件 206
10.5.1 Button控件 206
10.5.2 RadioButton控件 207
10.5.3 CheckBox控件 209
10.6列表类控件 210
10.6.1 ListBox控件 210
10.6.2 ComboBox控件 213
10.6.3 ListView控件 216
10.7容器类控件 220
10.7.1 Panel控件 220
10.7.2 TabControl控件 221
10.7.3 GroupBox控件 223
10.8 实践案例:员工管理系统 223
10.9动手练一练 226
10.9.1练习题 226
10.9.2上机实践 227
第11章 MDI程序设计 228
11.1 MDI概述 229
11.2 MDI窗体 229
11.2.1创建MDI应用程序 229
11.2.2标准窗体 231
11.3 MDI应用程序中的菜单 232
11.3.1 MDI程序菜单的特征 233
11.3.2创建MDI菜单 233
11.3.3合并菜单 235
11.3.4上下文菜单 237
11.4 MDI窗体事件 239
11.5管理子窗体 242
11.5.1排列子窗体 242
11.5.2使用菜单选择MDI子窗体 244
11.6 RichTextBox控件 245
11.6.1使用RichTextBox控件读写文件 246
11.6.2格式化富文本框 248
11.7实践案例:制作简单的记事本 251
11.8动手练一练 255
11.8.1练习题 255
11.8.2上机实践 256
第12章 使用ADO.NET数据库访问技术 257
12.1 ADO.NET概述 258
12.1.1 ADO.NET命名空间 258
12.1.2数据库特定的类(提供者对象) 259
12.2 ADO.NET连接数据库 260
12.2.1定义一个连接字符串 261
12.2.2存储连接字符串 263
12.2.3读取连接字符串 264
12.2.4测试连接 265
12.3操作数据库 267
12.3.1使用DataAdapter填充DataSet对象 267
12.3.2使用Command对象对数据进行操作 269
12.3.3 DataReader的使用 271
12.3.4 DataTable和DataVeiw的使用 272
12.3.5使用Command Builder生成SQL语句 274
12.4 DataSet概述 276
12.4.1更新DataSet 276
12.4.2向DataSet中添加数据 277
12.4.3为DataSet筛选和排序 279
12.5 DataGridView控件 281
12.5.1认识DataGridView控件 281
12.5.2使用DataGridView显示数据 281
12.6 实践案例:学生信息管理系统 283
12.7动手练一练 286
12.7.1练习题 286
12.7.2上机实践 287
第13章 文件和IO流 288
13.1 System.IO简介 289
13.2目录 289
13.3文件 293
13.4文件对话框 294
13.4.1 OpenFileDialog类的使用 294
13.4.2 SaveFileDialog类的使用 297
13.5读写文件 299
13.5.1使用StreamWriter类写入顺序文件 299
13.5.2使用StreamReader类读取顺序文件 301
13.5.3使用BinaryWriter和BinaryReader类读写二进制文件 302
13.6实践案例:制作文本文件读写器 305
13.7动手练一练 307
13.7.1练习题 307
13.7.2上机实践 308
第14章 图书管理系统 309
14.1系统概述 310
14.2系统功能模块 310
14.2.1登录模块 310
14.2.2人员模块 311
14.2.3图书模块 311
14.3数据库设计 312
14.3.1数据库需求分析 312
14.3.2数据库表设计 312
14.4公用模块 314
14.4.1定义程序入口 314
14.4.2连接数据库 314
14.4.3主界面模块 315
14.5登录模块 317
14.6人员模块 319
14.6.1客户管理 319
14.6.2员工管理 326
14.7图书模块 328
14.7.1库存管理 328
14.7.2租借图书 331
14.7.3历史记录 334
14.7.4归还图书 335
14.8总结 336
练习题参考答案 337