C#2008程序设计实践教程

C#2008程序设计实践教程"

作者:李乃文、傅游、沈学利等
ISBN:9787302196518
定价:¥39
字数:千字
页数:
出版时间:2009.05.01
开本:
版次:1-2
装帧:
出版社:清华大学出版社
简介

本书介绍最新版本的.NET 3.5和Visual C# 2008程序开发知识。全书共分14章,内容包括.NET Framework 3.5简介,C#编程基础知识,C#对象和类型,面向对象中的两个重要特性:继承和多态,数组知识,类型转换的使用,C#的字符串和正则表达式,集合的使用,try/catch块、throw子句、异常涉及的类以及如何创建用户自定义异常等,开发Windows窗体应用程序时所需的各种控件,C#中如何创建多文档界面(MDI)应用程序,C#的ADO.NET数据库编程,数据库的高级编程知识,在.NET Framework上的其他应用程序的开发,包括LINQ、WF、WCF以及Office等。

本书内容丰富,实践性强,面向所有C#程序设计人员,可作为普通高等院校C#程序设计课程的教材,也可作为学习和使用.NET和C#编程的开发人员的参考资料。

前言

C#是随.NET Framework一起发布的一种新语言,是一种崭新的面向对象的编程语言,强调以组件为基础的软件开发方法。它不但结合了Visual Basic的简单易用性,同时也提供了Java和C++语言的灵活性和强大功能。C#在.NET Framework构架中扮演着一个重要角色,可以说它是Microsoft公司面向下一代互联网软件和服务战略的重要内容,也是编写.NET Framework应用程序的首选。

1.本书主要内容

本书以最新版本的.NET 3.5和Visual C# 2008为例进行介绍,注重从初学者的认识规律出发,强调实用性、可操作性。使用通俗语言对Visual C# 2008基本概念和基本设计方法的讲解浅显易懂、深入浅出,并且安排了大量典型实用的例题,使学习者结合实例学习、掌握设计的方法和技巧。全书各章概要如下。

第1章介绍.NET Framework 3.5,包括.NET Framework 3.5简介、.NET Framework平台结构及其重要组成部分,还介绍了如何配置.NET Framework环境及使用C#创建各类型的.NET应用程序。

第2章通过对C#中的变量、数据类型、运算符及控制语句进行讲解,使读者掌握C#编程的基础知识。

第3章介绍C#对象和类型,包括定义类和结构、为类添加成员、类构造函数、结构的继承和构造函数及这些类型的基类Object类等。

第4章介绍面向对象中的两个重要特性:继承和多态,包括继承的类型、如何实现继承、继承时的构造函数、多态的虚方法和隐藏方法以及自定义接口等。

第5章主要介绍数组,包括数组的声明、数组初始化、访问数组元素、多维和锯齿数组、数组的排序以及常见接口的实现,如IComparable、ICollection和IList等。

第6章介绍类型转换的使用,包括类型的安全性、装箱和拆箱、对象比较、运算符重载以及用户如何自定义数据类型转换。

第7章介绍C#的字符串和正则表达式,包括String类、StringBuilder、格式化字符串、正则表达式概述、使用正则来匹配、组合和捕获等。

第8章介绍集合的使用,包括常用的集合类以及各种集合类型,如列表、队列、栈、链表、有序表、字典和位数组等。

第9章介绍有关try/catch块、throw子句、异常涉及的类、finally块以及如何创建用户自定义异常等方面的知识。

第10章主要介绍开发Windows窗体应用程序时所需的各种控件,包括基本控件、显示控件、图形和图像控件、按钮类控件、列表类控件、容器类控件、Timer和NotifyIcon控件等。

第11章介绍C#中如何创建多文档界面(MDI)应用程序,以及MDI应用程序中需要用的工具栏和状态栏,在父窗体和子窗体之间集成菜单和其他控件。

第12章介绍C#的ADO.NET数据库编程,包括:ADO.NET的概述、使用ADO.NET定义数据库连接、DataAdapter、DataReader、CommandBuilder以及DataSet的应用等。

第13章介绍数据库的高级编程知识,包括使用DataGridView控件、简单绑定数据、复杂绑定以及使用Crystal Report报表等。

第14章介绍在.NET Framework上的其他应用程序开发,包括LINQ、WF、WCF以及Office等。

2.本书主要特色

本书通过实例介绍Visual C# 2008程序开发知识,具有实用性教程的特色。

? 本书汇总了作者多年的程序员职业教学培训经验,内容组织更合理,实例丰富全面。

? 本书使用Visual C# 2008语言开发了大量实例,读者可以通过这些丰富实例学习Visual C# 2008编程实践知识。

? 本书编写了大量“实验项目”,引导读者应用该章知识独立练习编程项目。

? 每章课后练习题帮助学生检查对Visual C# 2008开发理论知识的掌握程度。

? 本书光盘提供了实例的完整源文件和教学视频文件。

提示:本光盘使用之前需要首先安装光盘中提供的tscc插件才能运行视频文件。

3.本书读者对象

书中采用大量的实例进行讲解,力求通过实例使读者更形象地理解面向对象思想,快速掌握C#编程技术。本书难度适中,内容由浅入深,实用性强。每章附有精心编写的实验和习题,便于读者实践和巩固所学知识。本书内容丰富、实践性强,面向所有C#程序设计人员,本书可作为普通高等院校C#程序设计课程的教材,也可作为对.NET感兴趣的读者的参考资料。

参与本书编写的除了封面署名人员外,还有胡丽霞、铙美君、肖新峰、宋强、马海军、许勇光、王泽波、孙江玮、田成军、刘俊杰、李海庆、王树兴、朱俊成、王敏、张瑞萍、王黎、安征、亢凤林、康显丽、李海峰、崔群法、孙岩、祁凯、倪宝童、王立新、吴越胜、何方、张银鹤等。

由于时间仓促,水平有限,疏漏之处在所难免,欢迎读者登录清华大学出版社的网站www.tup.com.cn与我们联系,帮助我们改进提高。

  III

目录

上篇  基 础 篇

第1章  .NET Framework体系结构 1

1.1  C#与.NET Framework 1

1.1.1  C#简介 1

1.1.2  .NET Framework简介 2

1.2  公共语言运行时 5

1.2.1  公共类型系统 5

1.2.2  公共语言规范 6

1.2.3  中间语言 7

1.2.4  托管执行过程 8

1.2.5  自动内存管理 9

1.3  .NET Framework类库 10

1.4  程序集 12

1.4.1  程序集概述 12

1.4.2  程序集内容 13

1.4.3  程序集清单 14

1.5  命名空间 15

1.5.1  命名空间结构 15

1.5.2  定义命名空间 17

1.5.3  引用命名空间 19

1.6  配置.NET Framework环境 21

1.6.1  Visual Studio 2008简介 21

1.6.2  安装Visual Studio 2008 22

1.6.3  熟悉Visual Studio 2008 26

1.7  用C#创建.NET应用程序 29

1.7.1  Windows窗体应用程序 29

1.7.2  ASP.NET Web应用程序 30

1.7.3  Windows服务 31

1.7.4  Windows Presentation 

Foundation(WPF) 31

1.7.5  Windows Communication 

Foundation(WCF) 32

1.7.6  Windows Workflow

Foundation(WWF) 32

第2章  C#编程基础 34

2.1  变量和数据类型 34

2.1.1  使用变量和数据类型 34

2.1.2  声明和初始化变量 36

2.1.3  改变数据类型 37

2.1.4  使用引用变量 37

2.2  运算符与表达式 38

2.2.1  运算符 38

2.2.2  表达式 42

2.3  控制语句 42

2.3.1  条件语句 42

2.3.2  循环语句 45

2.3.3  跳转语句 48

2.4  枚举类型 50

2.5  实验指导 51

2.6  思考与练习 58

第3章  对象和类型 60

3.1  类和结构 60

3.1.1  定义类 60

3.1.2  定义结构 62

3.2  类成员 64

3.2.1  数据成员 64

3.2.2  构造函数 66

3.2.3  函数成员 68

3.2.4  只读字段 71

3.3  结构 72

3.3.1  结构是值类型 72

3.3.2  结构和继承 73

3.3.3  结构的构造函数 74

3.4  部分类 74

3.5  Object类 76

3.5.1  System.Object方法 76

3.5.2  ToString()方法 77

3.6  实验指导 79

3.7  思考与练习 84

第4章  继承和多态 87

4.1  继承的类型 87

4.1.1  实现继承和接口继承 87

4.1.2  多重继承 88

4.1.3  结构和类 88

4.2  实现继承 88

4.3  派生类的构造函数 89

4.3.1  无参数的构造函数 90

4.3.2  带参数的构造函数 90

4.3.3  构造函数的执行顺序 91

4.4  抽象类和抽象方法 92

4.5  密封类和密封方法 93

4.6  多态性 94

4.6.1  虚方法 94

4.6.2  隐藏方法 95

4.6.3  调用函数的基类版本 96

4.7  接口 97

4.7.1  定义和实现接口 97

4.7.2  派生的接口 99

4.8  实验指导 100

4.9  思考与练习 106

第5章  数组 109

5.1  简单数组 109

5.1.1  数组的声明 109

5.1.2  数组的初始化 110

5.1.3  访问数组元素 111

5.1.4  使用引用类型 112

5.2  复合数组 112

5.2.1  多维数组 113

5.2.2  锯齿数组 114

5.3  Array 115

5.3.1  属性 115

5.3.2  创建数组 116

5.3.3  复制数组 117

5.3.4  排序 119

5.4  数组和集合接口 122

5.4.1  IComparable接口 122

5.4.2  ICollection接口 123

5.4.3  IList接口 125

5.4.4  IEnumerable接口 128

5.5  实验指导 129

5.6  思考与练习 133

第6章  类型强制转换 135

6.1  类型的安全性 135

6.1.1  类型转换 135

6.1.2  装箱和拆箱 138

6.2  对象的相等比较 139

6.2.1  引用类型的相等比较 140

6.2.2  值类型的相等比较 141

6.3  运算符重载 142

6.3.1  运算符的工作方式 142

6.3.2  运算符重载的声明 143

6.3.3  运算符重载示例:

Vector结构 144

6.4  用户定义的数据类型转换 149

6.4.1  执行用户定义的

类型转换 150

6.4.2  多重数据类型转换 155

6.5  实验指导 157

6.6  思考与练习 160

第7章  字符串和正则表达式 162

7.1  System.String类 162

7.1.1  创建字符串 163

7.1.2  StringBuilder成员 166

7.1.3  格式化字符串 167

7.2  正则表达式 172

7.2.1  正则表达式概述 172

7.2.2  RegularExpressions-

Playaround示例 174

7.2.3  显示结果 176

7.2.4  匹配、组合和捕获 177

7.3  实验指导 179

7.4  思考与练习 182

第8章  集合 185

8.1  集合类 185

8.2  列表 186

8.2.1  创建列表 186

8.2.2  只读列表 188

8.3  队列 189

8.4  栈 190

8.5  链表 191

8.6  有序表 193

8.7  字典 195

8.7.1  键的类型 196

8.7.2  其他字典类 196

8.8  位数组 197

8.8.1  BitArray 198

8.8.2  BitVector32 198

8.9  性能 199

8.10  实验指导 200

8.11  思考与练习 206

第9章  结构化的异常处理 208

9.1  结构化异常处理的基本知识 208

9.1.1  抛出和捕获异常 209

9.1.2  嵌套Try语句 211

9.2  异常类 213

9.2.1  基于类型的筛选异常 213

9.2.2  System.Exception类

的成员 215

9.2.3  内部异常 216

9.2.4  抛出预定义异常实例 217

9.3  用户自定义的异常 219

9.4  实验指导 220

9.5  思考与练习 226

第10章  Windows窗体控件 229

10.1  Windows窗体控件概述 229

10.2  基本控件 230

10.2.1  TextBox控件 230

10.2.2  RichTextBox控件 231

10.2.3  MaskedTextBox控件 232

10.3  显示信息的控件 233

10.3.1  Label控件 234

10.3.2  LinkLabel控件 234

10.4  图形和图像类控件 235

10.4.1  ImageList控件 235

10.4.2  PictureBox控件 236

10.5  按钮类控件 237

10.5.1  Button控件 237

10.5.2  RadioButton控件 239

10.5.3  CheckBox控件 240

10.6  列表类控件 241

10.6.1  ListBox控件和Checked-

ListBox控件 241

10.6.2  ComboBox控件 244

10.6.3  ListView控件 246

10.7  容器类控件 249

10.7.1  Panel控件 249

10.7.2  GroupBox控件 250

10.8  其他控件 250

10.8.1  Timer组件 251

10.8.2  NotifyIcon控件 251

10.9  实验指导 252

10.10  思考与练习 261

第11章  MDI程序设计 263

11.1  MDI概述 263

11.2  MDI窗体 264

11.2.1  创建MDI应用程序 264

11.2.2  工具栏 266

11.2.3  状态栏 269

11.2.4  标准窗体和MDI

应用程序 271

11.3  菜单和MDI应用程序 273

11.3.1  创建MDI菜单 273

11.3.2  合并菜单 275

11.3.3  设置菜单项 277

11.3.4  使用菜单项选择MDI

子窗体 278

11.3.5  排序子窗体 279

11.3.6  快捷菜单 280

11.4  管理MDI应用程序 282

11.4.1  MDI窗体事件关系 282

11.4.2  MDI子窗体 282

11.5  实验指导 284

11.6  思考与练习 289

第12章  ADO.NET数据库编程 291

12.1  ADO.NET概述 291

12.2  定义一个数据库连接 292

12.2.1  定义一个连接字符串 293

12.2.2  存储连接字符串 295

12.2.3  读取连接字符串 296

12.2.4  测试连接 296

12.3  操作数据库 299

12.3.1  使用DataAdapter

填充DataSet对象 299

12.3.2  使用Command对象 300

12.3.3  使用DataReader类 302

12.3.4  使用DataTable和

DataVeiw类 304

12.3.5  定义数据库关系 306

12.3.6  使用CommandBuilder

生成SQL语句 308

12.4  DataSet应用 309

12.4.1  更新DataSet 309

12.4.2  给DataSet添加数据 311

12.4.3  对DataSet排序和筛选 312

12.5  实验指导 314

12.6  思考与练习 320

第13章  高级数据库编程 322

13.1  DataGridView控件 322

13.2  数据绑定 324

13.2.1  简单绑定 324

13.2.2  复杂绑定 326

13.3  Crystal Report报表 327

13.3.1  创建报表 327

13.3.2  报表设计器 330

13.3.3  修改报表 331

13.3.4  使用报表 331

13.4  实验指导 333

13.5  思考与练习 336

第14章  .NET Framework 3.5

开发 338

14.1  LINQ 338

14.1.1  LINQ概述 338

14.1.2  LINQ简单用法 339

14.1.3  LINQ操作 341

14.2  WF开发 342

14.2.1  WF工作流概述 342

14.2.2  创建一个简单的

工作流 343

14.3  WCF开发 344

14.3.1  WCF概述 345

14.3.2  工作流服务 346

14.3.3  持久性服务 349

14.4  Office开发 351

14.4.1  Office解决方案概述 351

14.4.2  使用外接程序创建

自定义Word 352

14.5  实验指导 354

14.6  思考与练习 359

参考答案 361

作者简介

编辑推荐

作者寄语

电子资料

www.luweidong.cn

下一个