图书目录

第1章  C#语言基础 1

1.1  C#语言介绍 2

1.1.1  C#语言的特点 2

1.1.2  .NET Framework框架 2

1.2  史上最强开发工具——Microsoft Visual Studio 4

1.2.1  Visual Studio 2017的新功能 4

1.2.2  Visual Studio 2017的版本 4

1.2.3  安装Microsoft Visual Studio 2017 5

1.3  初识Microsoft Visual Studio开发环境 7

1.3.1  设置工作 7

1.3.2  新建项目 8

1.3.3  解决方案和类视图 10

1.3.4  文本编辑器 11

1.3.5  生成与查错 13

1.4  实践案例与上机指导 14

1.4.1  创建工程并编写代码 14

1.4.2  运行并调试 15

1.4.3  分析代码 15

1.5  思考与练习 16

第2章  语法基础 19

2.1  语句和注释 20

2.1.1  语句 20

2.1.2  注释 21

2.2  变量 21

2.2.1  C#语言的数据类型 22

2.2.2  引用类型 22

2.2.3  值类型 23

2.2.4  基本类型 24

2.2.5  变量命名 26

2.2.6  变量的声明和赋值 26

2.3  常量 27

2.4  类型转换 28

2.4.1  隐式转换 28

2.4.2  显式转换 29

2.5  实践案例与上机指导 31

2.5.1  枚举 31

2.5.2  结构 32

2.6  思考与练习 33

第3章  运算符与表达式 35

3.1  运算符和表达式基础 36

3.2  运算符 37

3.2.1  基本运算符 37

3.2.2  数学运算符 40

3.2.3  赋值运算符 41

3.2.4  比较运算符 41

3.2.5  逻辑运算符 42

3.2.6  移位运算符 43

3.3  运算符优先级 44

3.4  实践案例与上机指导 45

3.4.1  尝试使用三元运算符 45

3.4.2  运算符的优先级演练 46

3.5  思考与练习 47

第4章  流程控制语句 49

4.1  语句和语句块 50

4.2  选择语句 51

4.2.1  使用if语句 51

4.2.2  使用switch语句 53

4.3  循环语句 55

4.3.1  使用while语句 55

4.3.2  使用do…while语句 56

4.3.3  使用for语句 59

4.4  跳转语句 60

4.4.1  使用break语句 60

4.4.2  使用continue语句 62

4.5  实践案例与上机指导 63

4.6  思考与练习 64

第5章  方法 65

5.1  定义和使用方法 66

5.1.1  定义方法 66

5.1.2  方法参数 67

5.2  变量的作用域 69

5.3  静态方法与实例方法 70

5.4  C#方法的参数 72

5.4.1  使用值参数 72

5.4.2  使用引用参数 73

5.4.3  使用参数数组 73

5.4.4  使用数组参数 74

5.5  实践案例与上机指导 77

5.6  思考与练习 79

第6章  面向对象编程 81

6.1  面向对象基础 82

6.1.1  什么是面向对象 82

6.1.2  C#语言的面向对象编程 82

6.1.3  实战演练——OOP技术的应用 83

6.2  类 85

6.2.1  定义类 85

6.2.2  类的成员 87

6.2.3  定义并使用类的成员 88

6.3  访问修饰符 88

6.3.1  5种访问修饰符 89

6.3.2  类成员访问修饰符 89

6.3.3  类的访问修饰符 90

6.4  对象 92

6.4.1  创建对象 92

6.4.2  使用对象 92

6.5  构造方法 94

6.5.1  构造方法概述 95

6.5.2  使用私有构造方法 96

6.5.3  使用静态构造方法 96

6.6  实践案例与上机指导 97

6.6.1  使用析构方法 98

6.6.2  使用this关键字 99

6.7  思考与练习 99

第7章  数组和集合 101

7.1  数组 102

7.1.1  一维数组 102

7.1.2  多维数组 103

7.2  数组的高级应用 104

7.2.1  数组的属性和方法 105

7.2.2  读取数组中的数据 106

7.2.3  复制数组中的数据 106

7.2.4  搜索数组中的数据 107

7.2.5  CreateInstance方法 108

7.2.6  数组转换 111

7.3  集合 112

7.3.1  C#集合基础 112

7.3.2  ArrayList集合类 114

7.3.3  Hashtable集合类 116

7.4  实践案例与上机指导 119

7.4.1  使用Queue集合类 119

7.4.2  使用SortedList集合类 120

7.5  思考与练习 120

第8章  继承与多态 123

8.1  继承 124

8.1.1  类的层次结构 124

8.1.2  使用C#继承 125

8.2  隐藏 127

8.2.1  什么是隐藏 127

8.2.2  在子类中实现隐藏 128

8.3  多态 128

8.3.1  虚方法和虚方法重写 128

8.3.2  多态的好处 130

8.4  关键字base 133

8.4.1  base访问 133

8.4.2  使用base指定构造函数 133

8.5  抽象类和抽象方法 135

8.5.1  定义抽象类 135

8.5.2  抽象成员 135

8.6  密封类和密封成员 137

8.6.1  密封类 137

8.6.2  密封成员 138

8.7  实践案例与上机指导 139

8.7.1  使用静态类 139

8.7.2  定义并使用接口 140

8.8  思考与练习 141

第9章  字符串与正则表达式 143

9.1  字符串 144

9.1.1  两种字符串格式 144

9.1.2  string和String 144

9.1.3  连接字符串和提取字符串 146

9.1.4  分隔字符串 146

9.1.5  实现字符大小写处理 147

9.1.6  字符串比较 147

9.1.7  字符搜索 148

9.1.8  字符复制 149

9.1.9  字符修改 149

9.1.10  字符格式化 150

9.1.11  可变字符串的类 151

9.2  正则表达式 152

9.2.1  C#正则表达式基础 153

9.2.2  正则表达式的语言 153

9.2.3  正则表达式类 155

9.3  实践案例与上机指导 159

9.3.1  使用分隔符分隔 159

9.3.2  字符检索处理 160

9.4  思考与练习 161

第10章  委托与事件 163

10.1  使用C#委托 164

10.1.1  委托基础 164

10.1.2  声明委托 164

10.1.3  委托的前世今生 166

10.1.4  使用委托 169

10.1.5  使用委托匿名方法 173

10.2  使用C#事件 175

10.2.1  声明事件 175

10.2.2  使用事件 176

10.3  实践案例与上机指导 176

10.3.1  根据用户的按键操作来响应事件 177

10.3.2  使用访问器方式响应事件 178

10.4  思考与练习 179

第11章  泛型 181

11.1  泛型基础 182

11.1.1  泛型的特点 182

11.1.2  没推出泛型之前的处理 182

11.2  声明泛型 183

11.2.1  声明泛型类 184

11.2.2  泛型接口 186

11.2.3  泛型委托 188

11.2.4  泛型方法 189

11.2.5  使用泛型约束 190

11.3  实践案例与上机指导 192

11.3.1  泛型集合类的基本处理 193

11.3.2  泛型集合类的键值处理 194

11.4  思考与练习 196

第12章  异常处理和程序调试 197

12.1  异常处理 198

12.1.1  异常处理类 198

12.1.2  异常的特点 199

12.2  使用异常处理语句 200

12.2.1  使用try…catch语句 200

12.2.2  使用throw语句 201

12.2.3  使用try…catch…finally语句 202

12.2.4  使用多个catch语句 204

12.2.5  自定义异常 205

12.3  程序调试 206

12.3.1  断点调试 206

12.3.2  自定义调用堆栈 209

12.3.3  Visual Studio .NET的调试配置说明 209

12.3.4  使用 IntelliTrace进行调试 210

12.4  实践案例与上机指导 212

12.5  思考与练习 213

第13章  文件 215

13.1  文件操作管理 216

13.1.1  文件管理类介绍 216

13.1.2  使用File和FileInfo 217

13.1.3  使用Directory和DirectoryInfo 220

13.1.4  使用Path 224

13.1.5  使用Environment 226

13.2  流文件操作管理 229

13.2.1  流文件的抽象基类Stream基础 229

13.2.2  使用FileStream 230

13.2.3  使用StreamWriter和StreamReader 233

13.3  实践案例与上机指导 236

13.3.1  使用BinaryReader读取二进制数据 236

13.3.2  使用BinaryWriter写入二进制数据 237

13.4  思考与练习 237

第14章  Windows窗体编程 239

14.1  窗体编程基础 240

14.1.1  窗体概述 240

14.1.2  一个简单的窗体程序 241

14.2  创建和使用窗体 243

14.2.1  创建窗体 243

14.2.2  窗体设置 245

14.3  使用控件和组件 250

14.3.1  控件的属性 250

14.3.2  使用Label控件和LinkLabel控件 251

14.3.3  使用TextBox控件 252

14.3.4  使用Button控件 254

14.4  使用窗体菜单 256

14.4.1  主菜单控件介绍 257

14.4.2  使用MenuStrip控件 259

14.5  实践案例与上机指导 262

14.6  思考与练习 265

第15章  ADO.NET和数据库操作 267

15.1  ADO.NET概述 268

15.1.1  ADO.NET的产生背景 268

15.1.2  ADO.NET的对象 268

15.2  使用Connection对象连接数据库 270

15.2.1  安装Northwind 270

15.2.2  System.Data命名空间 272

15.2.3  基本连接处理 272

15.2.4  连接数据库 273

15.2.5  关闭数据库连接 273

15.2.6  及时关闭连接 275

15.3  使用Command对象操作数据库 277

15.3.1  Command对象的属性和方法 277

15.3.2  处理命令 280

15.4  实践案例与上机指导 283

15.5  思考与练习 284

第16章  在线商城系统 287

16.1  项目介绍 288

16.1.1  电子商务的简要介绍 288

16.1.2  在线商城系统构成模块 288

16.2  设计数据库 289

16.2.1  数据库设计 290

16.2.2  系统参数设置文件 292

16.3  数据访问层 293

16.3.1  商品显示 293

16.3.2  订单处理 298

16.3.3  商品评论 306

16.3.4  商品分类 309

16.3.5  商品管理 315

16.4  购物车模块 317

16.4.1  购物车组件模块 317

16.4.2  购物车商品添加模块 322

16.4.3  购物车查看和管理模块 323

16.5  订单处理 327

16.5.1  生成订单编号 328

16.5.2  提交和创建订单 328

16.5.3  订单详情模块 330

16.5.4  订单列表模块 332

16.5.5  订单状态处理模块 333

16.6  项目展示 336

习题答案 339