《C#程序设计教程 第2版》PDF下载

  • 购买积分:15 如何计算积分?
  • 作  者:李春葆,谭成予,曾平等编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2013
  • ISBN:9787302296034
  • 页数:460 页
图书介绍:本书以Visual C#为平台介绍C#程序设计方法,包括C#可视化编程过程、C#语言基础、窗体和控件设计、面向对象程序设计、图形设计、文件操作、ADO.NET数据库访问技术、XML应用和Web应用程序设计等。

第1章 C#概述 1

1.1 什么是C# 1

1.2 NET Framework概述 2

1.2.1 什么是.NET平台 2

1.2.2 什么是.NET Framework 2

1.2.3 NET程序编译过程 5

1.2.4 C#与.NET Framework 6

1.3 配置Visual C#开发环境和启动退出操作 7

1.3.1 配置Visual C#开发环境 7

1.3.2 Visual C#的启动 8

1.3.3 Visual C#的退出 11

1.4 Visual C#的集成开发环境 11

1.4.1 Visual C#菜单栏 11

1.4.2 Visual C#工具栏 13

1.4.3 Visual C#工具箱 14

1.4.4 解决方案资源管理器 15

1.4.5 属性窗口 17

1.4.6 窗体设计器 18

1.4.7 代码编辑窗口 19

1.4.8 其他窗口 20

1.4.9 帮助系统 21

1.5 编辑器设置 21

练习题1 23

第2章 简单的C#程序设计 25

2.1 创建第一个Windows控制台应用程序 25

2.1.1 控制台应用程序示例 25

2.1.2 控制台应用程序项目的组成 27

2.1.3 控制台应用程序中的基本元素 30

2.2 创建第一个Windows应用程序 31

2.2.1 Windows应用程序示例 31

2.2.2 Windows应用程序项目的组成 34

2.2.3 Windows应用程序中的基本元素 35

练习题2 35

第3章 C#程序设计基础 37

3.1 标识符 37

3.2 C#中数据类型 38

3.2.1 值类型 39

3.2.2 引用类型 41

3.3 C#中的变量和常量 43

3.3.1 变量 43

3.3.2 值类型变量和引用类型变量的区别 44

3.3.3 常量 47

3.4 类型转换 48

3.4.1 隐式转换 48

3.4.2 显式转换 49

3.4.3 装箱和拆箱 50

3.5 结构类型和枚举类型 51

3.5.1 结构类型 51

3.5.2 枚举类型 53

3.6 C#运算符和表达式 55

3.6.1 算术运算符 55

3.6.2 字符串运算符 56

3.6.3 赋值运算符 56

3.6.4 关系运算符 56

3.6.5 逻辑运算符 57

3.6.6 位运算符 57

3.6.7 条件运算符 58

3.6.8 其他运算符 59

3.6.9 运算符的优先级 60

3.7 C#中常用类和结构 60

3.7.1 String类 61

3.7.2 Math类 64

3.7.3 Convert类 64

3.7.4 DateTime结构 65

练习题3 66

第4章 C#控制语句 70

4.1 选择控制语句 70

4.1.1 if语句 70

4.1.2 if…else语句 71

4.1.3 if…else if语句 72

4.1.4 switch语句 73

4.2 循环控制语句 75

4.2.1 while语句 75

4.2.2 do…while语句 76

4.2.3 for语句 76

4.3 跳转语句 77

4.3.1 break语句 77

4.3.2 continue语句 78

4.3.3 goto语句 79

练习题4 80

第5章 数组和集合 85

5.1 一维数组 85

5.1.1 一维数组的定义 85

5.1.2 一维数组的动态初始化 86

5.1.3 一维数组的静态初始化 87

5.1.4 访问一维数组中的元素 87

5.1.5 一组数组的越界 88

5.2 二维数组 88

5.2.1 二维数组的定义 89

5.2.2 二维数组的动态初始化 89

5.2.3 二维数组的静态初始化 89

5.2.4 访问二维数组中的元素 90

5.3 交错数组 91

5.3.1 交错数组的定义和初始化 91

5.3.2 访问交错数组中的元素 91

5.4 Array类 92

5.4.1 Array类的属性和方法 92

5.4.2 Array类中方法的使用 93

5.5 ArrayList类 94

5.5.1 ArrayList类的对象的定义 94

5.5.2 ArrayList类的属性 95

5.5.3 ArrayList类的方法 95

5.6 List<T>类 96

5.6.1 List<T>类的对象的定义 96

5.6.2 List<T>类的属性 96

5.6.3 List<T>类的方法 97

练习题5 99

第6章 面向对象程序设计 102

6.1 面向对象程序设计概述 102

6.1.1 面向对象的基本概念 102

6.1.2 面向对象的优点 103

6.2 类 104

6.2.1 类的声明 104

6.2.2 类的成员 105

6.2.3 分部类 105

6.2.4 类和结构类型的差异 106

6.3 对象 106

6.3.1 定义类的对象 106

6.3.2 访问对象的字段 107

6.3.3 调用对象的方法 107

6.4 构造函数和析构函数 109

6.4.1 构造函数 109

6.4.2 析构函数 111

6.5 静态成员 111

6.5.1 静态字段 112

6.5.2 静态方法 112

6.6 属性 115

6.6.1 什么是属性 115

6.6.2 属性声明及其使用 115

6.7 方法 116

6.7.1 什么是方法 116

6.7.2 方法的定义 116

6.7.3 方法的返回值 116

6.7.4 方法的参数 117

6.7.5 方法的重载 118

6.8 嵌套类 119

6.8.1 嵌套类的声明 119

6.8.2 this关键字 119

6.8.3 嵌套类和包含类的关系 121

6.9 索引器 122

6.9.1 什么是索引器 122

6.9.2 声明索引器 122

6.9.3 使用其他值进行索引 123

6.10 委托 124

6.10.1 什么是委托 124

6.10.2 定义和使用委托 125

6.10.3 委托对象封装多个方法 127

6.10.4 使委托与匿名方法关联 128

6.11 事件 129

6.11.1 事件处理机制 129

6.11.2 事件的创建和使用 130

6.12 运算符重载 134

6.12.1 运算符重载概述 134

6.12.2 一元运算符重载 134

6.12.3 二元运算符重载 135

6.13 类对象的转换 136

6.13.1 关键字is 136

6.13.2 关键字as 137

6.14 命名空间 138

6.14.1 命名空间概述 138

6.14.2 使用命名空间 138

练习题6 141

第7章 继承和接口设计 147

7.1 继承 147

7.1.1 什么是继承 147

7.1.2 派生类的声明 148

7.1.3 基类成员的可访问性 149

7.1.4 按次序调用构造函数和析构函数 149

7.1.5 使用sealed修饰符来禁止继承 151

7.2 多态性 152

7.2.1 隐藏基类方法 152

7.2.2 重写 152

7.3 抽象类 155

7.3.1 抽象类的特性 155

7.3.2 抽象方法 156

7.3.3 抽象属性 157

7.4 接口 158

7.4.1 接口的特性 158

7.4.2 接口的定义 158

7.4.3 接口的成员 159

7.4.4 接口的实现 160

7.4.5 接口映射 163

7.4.6 接口实现的继承 164

7.4.7 重新实现接口 166

7.5 接口在集合排序中的应用 168

7.5.1 ArrayList类的排序方法 168

7.5.2 IComparable接口 168

7.5.3 IComparer接口 170

练习题7 174

第8章 Windows窗体应用程序设计 180

8.1 窗体设计 180

8.1.1 创建Windows窗体应用程序的过程 180

8.1.2 窗体类型 181

8.1.3 窗体的常用属性 181

8.1.4 窗体的常用事件 184

8.1.5 窗体的常用方法 184

8.1.6 多个窗体之间的调用 185

8.1.7 窗体上各事件的引发顺序 190

8.1.8 焦点与Tab键次序 190

8.2 常用控件的设计 191

8.2.1 控件概述 191

8.2.2 富文本框控件 192

8.2.3 分组框控件 194

8.2.4 面板控件 194

8.2.5 复选框控件 195

8.2.6 单选按钮控件 197

8.2.7 图片框控件 198

8.2.8 组合框控件 199

8.2.9 列表框控件 201

8.2.10 带复选框的列表框控件 204

8.2.11 定时器控件 205

8.2.12 滚动条控件 206

8.2.13 月历控件 208

8.2.14 日期/时间控件 208

8.2.15 超链接标签控件 210

8.3 多文档窗体 211

8.4 窗体设计的事件机制 214

8.4.1 什么是事件处理程序 214

8.4.2 在Windows窗体中创建事件处理程序 214

8.4.3 在执行时为Windows窗体创建事件处理程序 215

8.4.4 将多个事件连接到Windows窗体中的单个事件处理程序 216

练习题8 218

第9章 用户界面设计 221

9.1 菜单设计 221

9.1.1 菜单的基本结构 221

9.1.2 创建下拉式菜单 223

9.1.3 弹出式菜单设计 228

9.1.4 为菜单项添加访问热键和快捷键 230

9.2 通用对话框 231

9.2.1 打开文件对话框 231

9.2.2 保存文件对话框 233

9.2.3 颜色对话框 235

9.2.4 字体对话框 235

9.3 图像列表框控件 236

9.3.1 建立ImageList控件 236

9.3.2 ImageList控件的属性 237

9.3.3 Images集合的属性和方法 238

9.4 树形视图控件 238

9.4.1 TreeView控件概述 239

9.4.2 建立TreeView控件 239

9.4.3 TreeView控件的属性 240

9.4.4 TreeView控件的事件和方法 240

9.4.5 Nodes集合和TreeNode对象 241

9.4.6 执行时TreeView控件的基本操作 242

9.5 列表视图控件 244

9.5.1 ListView控件概述 244

9.5.2 建立ListView控件 245

9.5.3 ListView控件的属性 246

9.5.4 ListView控件的事件和方法 246

9.5.5 Items集合和ListViewItem对象 247

9.5.6 Columns集合和ColumnHeader对象 248

9.5.7 执行时ListView控件的基本操作 249

9.6 工具栏控件 251

9.6.1 建立ToolStrip控件 251

9.6.2 ToolStrip控件的属性 252

9.6.3 Items集合和ToolStripButton对象 252

9.7 状态栏控件 253

9.7.1 建立StatusStrip控件 253

9.7.2 StatusStrip控件的属性 254

练习题9 254

第10章 图形设计 257

10.1 绘图概述 257

10.1.1 绘图的基本知识 257

10.1.2 什么是GDI+ 258

10.1.3 Graphics类 259

10.2 绘图的基本步骤 259

10.3 绘制图形 261

10.3.1 绘制直线 261

10.3.2 绘制矩形 262

10.3.3 绘制多边形 263

10.3.4 绘制圆和椭圆 263

10.3.5 绘制弧线 264

10.3.6 绘制饼形 265

10.3.7 绘制非闭合曲线 265

10.3.8 绘制闭合曲线 266

10.3.9 绘制贝济埃曲线 267

10.4 创建画图工具 268

10.4.1 创建画笔 268

10.4.2 创建笔刷 269

10.4.3 创建字体 271

10.5 绘制文本 271

练习题10 273

第11章 文件操作 275

11.1 文件和System.IO模型概述 275

11.1.1 文件类型 275

11.1.2 文件的属性 276

11.1.3 文件访问方式 277

11.2 System.IO模型 277

11.2.1 什么是System.IO模型 277

11.2.2 文件编码 278

11.2.3 C#的文件流 278

11.3 文件夹和文件操作 278

11.3.1 文件夹操作 278

11.3.2 文件操作 279

11.4 FileStream类 281

11.5 文本文件的操作 282

11.5.1 StreamReader类 282

11.5.2 StreamWriter类 284

11.6 二进制文件操作 286

11.6.1 BinaryWriter类 286

11.6.2 BinaryReader类 287

11.6.3 二进制文件的随机查找 289

11.7 序列化和反序列化 290

11.7.1 序列化 290

11.7.2 反序列化 291

练习题11 293

第12章 错误调试和异常处理 295

12.1 错误分类 295

12.1.1 语法错误 295

12.1.2 执行错误 296

12.1.3 逻辑错误 297

12.2 程序调试 297

12.2.1 调试工具 298

12.2.2 如何开始调试 298

12.2.3 设置断点 298

12.2.4 定位错误 299

12.2.5 调试过程 299

12.2.6 显示调试信息 299

12.2.7 单步跟踪 302

12.3 异常处理 302

12.3.1 异常概述 302

12.3.2 异常处理语句 303

12.3.3 常用的异常类 306

练习题12 306

第13章 C#高级特性 309

13.1 泛型 309

13.1.1 什么是泛型 309

13.1.2 泛型的声明和使用 310

13.2 反射 312

13.2.1 反射概述 312

13.2.2 反射中常用的类 312

13.2.3 反射的应用示例 315

13.3 多线程程序设计 318

13.3.1 多线程的概述 318

13.3.2 线程命名空间 319

13.3.3 Thread类及其应用 319

13.3.4 线程优先级和线程调度 323

13.3.5 线程互斥 327

13.3.6 线程同步 331

练习题13 333

第14章 ADO.NET数据库访问技术 335

14.1 数据库概述 335

14.1.1 关系数据库的基本结构 335

14.1.2 结构化查询语言 337

14.2 ADO.NET模型 341

14.2.1 ADO.NET简介 341

14.2.2 ADO.NET体系结构 342

14.2.3 ADO.NET数据库的访问流程 344

14.3 ADO.NET的数据访问对象 344

14.3.1 OleDbConnection对象 344

14.3.2 OleDbCommand对象 347

14.3.3 OleDbataReader对象 353

14.3.4 OleDbataAdapter对象 355

14.4 DataSet对象 360

14.4.1 DataSet对象概述 360

14.4.2 Dataset对象的属性和方法 361

14.4.3 Tables集合和DataTable对象 362

14.4.4 Columns集合和DataColumn对象 365

14.4.5 Rows集合和DataRow对象 366

14.4.6 Relations集合和DataRelation对象 368

14.5 数据绑定 369

14.5.1 数据绑定概述 369

14.5.2 BindingNavigator控件 374

14.6 DataView对象 377

14.6.1 DataView对象概述 377

14.6.2 DataView对象的列排序设置 378

14.6.3 DataView对象的过滤条件设置 379

14.7 DataG ridView控件 380

14.7.1 创建DataGridView对象 380

14.7.2 DataGridView对象的属性、方法和事件 383

14.7.3 DataGridView与DataView对象结合 386

14.7.4 通过DataGridView对象更新数据源 389

练习题14 391

第15章 XML及其应用 394

15.1 XML概述 394

15.2 XML语法规则 395

15.2.1 XML文档中有关的术语 395

15.2.2 XML文档的结构 398

15.2.3 XML文档的语法规定 400

15.3 XPath表达式 403

15.3.1 路径匹配 404

15.3.2 谓词 404

15.3.3 属性匹配 404

15.3.4 通配符 405

15.3.5 XPath轴 405

15.4 用NET Framework类操作XML文档 406

15.4.1 XML文档操作类 406

15.4.2 XML文档的节点操作 413

15.5 DataSet和XML文档的相互转换 416

15.5.1 将XML文档转换成DataSet数据 416

15.5.2 将DataSet数据转换成XML文件 416

练习题15 418

第16章 Web应用程序设计 420

16.1 ASP.NET概述 420

16.1.1 ASP.NET的发展历程 420

16.1.2 ASP.NET网页的组件 420

16.1.3 ASP.NET网页的执行方式 421

16.1.4 ASP.NET页面的结构 421

16.2 开发Web应用程序的准备工作 422

16.2.1 安装Web服务器 422

16.2.2 管理和配置服务器 423

16.3 创建一个简单的Web应用程序 427

16.4 基本ASP.NET服务器控件 431

16.4.1 服务器控件概述 431

16.4.2 Label、Button和TextBox控件 433

16.4.3 DropDownList控件 433

16.4.4 CheckBox、CheckBoxList、RadioButton和RadioButtonList控件 436

16.4.5 数据验证控件 439

16.4.6 链接控件 441

16.5 高级ASP.NET服务器端控件 443

16.5.1 AccessDataSource控件 443

16.5.2 GridView控件 446

16.5.3 DetailsView控件 453

练习题16 455

附录 部分练习题参考答案 457

参考文献 460