
全书以C# WinForm编程为主线,以实例作为主要的讲解手段,使读者能够快速地掌握和应用所学到的C#程序设计的知识。
全书分为4个部分,共13章,主要介绍了C#语言编程的基础知识、基本算法和流程控制、面向对象编程、图形用户界面设计、ADO.NET数据访问技术以及多线程、GDI+高级编程等内容。同时,配合知识的讲解,列举了大量实例,并提供了相应的习题。
本书可作为高等学校计算机及相关专业C#语言课程的教材,也可作为自学C#程序设计人员的参考书。
自21世纪初Microsoft公司推出.NET平台以来,C#语言就成为该平台下核心部分之一,被称为“.NET”的母语。C#语言的功能强大、使用简单等特点,具有其他语言无法比拟的优势,在各个行业发挥了巨大的作用。
C#语言对于初学者来说十分容易上手,但想成为C#专业开发人员,则需要不断深入研究C#相关知识,并且在日常练习和实际应用开发中贯彻所学的思想和方法,不断提高分析和解决问题的能力。
本书着眼于C# Win Forms程序开发知识的介绍,注重基础知识的介绍,目的是引领读者进入C#的美妙世界。按照侧重点的不同,全书可分为4个部分:
第一部分包括第1~5章,主要介绍C#基本语法知识。
第1章C#概述,介绍C#的发展历程、编程环境和简单的C#程序。
第2章C#语言基础,介绍C#基础知识,包括变量、运算符和表达式。
第3章程序流程控制,主要介绍选择、循环和跳转语句。
第4章方法,介绍方法的声明、调用和参数等内容。
第5章数组与字符串,主要介绍数组和字符串的使用,以及正则表达式的相关知识。
第二部分包括第6章和第7章,介绍面向对象相关知识。
第6章面向对象编程基础,包括类和对象,面向对象的基本特征等。
第7章继承、多态、委托和事件,主要介绍继承、方法的重载和方法的重写等内容。
第三部分包括第8~10章,介绍图形用户界面程序设计。
第8章图形用户界面设计,介绍常用控件的使用。
第9章数据库与ADO.NET,介绍使用ADO.NET连接数据库,设计管理信息系统。
第10章高级Windows控件,介绍高级Windows控件的使用。
第四部分包括第11~13章,介绍C#高级应用。
第11章文件和流,介绍使用数据流读写文件和进行文件(夹)管理。
第12章多线程技术,介绍C#提供的用于编写多线程程序的方式。
第13章GDI+高级编程,介绍使用GDI+来完成图形的绘制和填充。
本书注重基础知识的介绍,并结合大量实例进行讲解。全书例题在Visual Studio.NET 2008环境下运行通过,并给出了运行结果,以方便读者学习时进行比较。习题经过精心设计,能够使读者在解答习题的过程中掌握所在章节的内容。
本书可作为高等学校计算机及相关专业C#语言课程的教材使用,也可作为自学C#程序设计人员的参考书籍。
本书由鄂旭教授、吴昊老师共同编写,并得到众多教师的大力支持和帮助,在此表示衷心的感谢。由于时间仓促及作者水平有限,尽管编者做了巨大的努力,书中错误仍在所难免,恳请读者对本书提出宝贵的批评和建议,以便再版时加以改进。
感谢北京交通大学中国产业安全研究中心、北京产业安全与发展研究基地的李孟刚等老师的大力支持和帮助。感谢清华大学出版社的大力支持与帮助。
本书在完成的过程中,得到了国家博士后基金(编号: 2012M520158)、辽宁省教育厅项目基金(编号: L2012396,L2012397,L2012400)、辽宁省教育改革项目基金等的资助,在此一并表示衷心的感谢。
编者鄂旭于渤海大学
2012年8月
第1章C#概述
1.1Microsoft .NET简介
1.1.1什么是 .NET
1.1.2公共语言运行时
1.2C#语言及其发展
1.3Visual Studio 2008
1.4第一个C#程序
1.4.1操作步骤
1.4.2程序说明
1.5本章小结
1.6习题
第2章C#语言基础
2.1标识符与关键字
2.1.1标识符
2.1.2关键字
2.2数据类型
2.2.1值类型
2.2.2引用类型
2.2.3类型转换
2.2.4装箱与拆箱
2.2.5不确定类型
2.3变量与常量
2.3.1变量
2.3.2常量
2.4运算符与表达式
2.4.1运算符
2.4.2表达式
2.5本章小结
2.6习题
第3章程序流程控制
3.1顺序结构
3.2选择结构
3.3循环结构
3.3.1while循环
3.3.2for循环
3.3.3循环嵌套
3.3.4跳转语句
3.4本章小结
3.5习题
第4章方法
4.1方法的声明
4.2方法的调用
4.3参数传递
4.3.1一般输入参数
4.3.2ref输入参数
4.3.3out输出参数
4.3.4params参数
4.3.5将二重循环改为方法调用的单循环
4.4本章小结
4.5习题
第5章数组与字符串
5.1数组
5.1.1一维数组
5.1.2多维数组
5.1.3锯齿数组
5.1.4两个数组间的赋值
5.1.5数组作为方法的参数
5.2字符串
5.2.1字符串的声明
5.2.2字符串常用操作方法
5.2.3字符串与其他类型的转换
5.2.4深入理解字符串
5.2.5正则表达式
5.3本章小结
5.4习题
第6章面向对象编程基础
6.1面向对象的基本概念
6.1.1什么是面向对象
6.1.2面向对象的基本特征
6.2类和对象
6.2.1对象
6.2.2类
6.3类的实例化
6.4类的成员
6.4.1数据成员
6.4.2方法成员
6.5修饰符
6.5.1类的修饰符
6.5.2成员的修饰符
6.5.3this关键字
6.5.4Math类
6.5.5DateTime类和TimeSpan类
6.6本章小结
6.7习题
第7章继承、多态、委托和事件
7.1类的继承
7.1.1继承的概念
7.1.2继承的实现
7.1.3base关键字
7.1.4扩展类中超类构造方法的执行
7.2抽象类与抽象方法
7.2.1抽象类与抽象方法简介
7.2.2sealed关键字
7.3接口
7.4类的多态
7.4.1方法的重载
7.4.2方法的重写
7.5委托和事件
7.5.1委托
7.5.2多重委托
7.5.3事件
7.6本章小结
7.7习题
第8章图形用户界面设计
8.1Win Forms项目
8.2事件处理机制
8.3Win Forms控件
8.3.1控件共有的常用属性
8.3.2标签
8.3.3按钮
8.3.4文本框
8.3.5分组框与单选按钮
8.3.6复选框
8.3.7组合框
8.3.8选项卡
8.3.9菜单
8.3.10树形视图
8.3.11图标控件
8.3.12窗体与面板
8.3.13消息框类
8.3.14其他常用事件
8.3.15编写多文档窗体应用程序
8.4本章小结
8.5习题
第9章数据库与ADO.NET
9.1连接数据库
9.2与数据库进行交互操作
9.2.1SQL语句
9.2.2查询操作
9.2.3添加操作
9.2.4更新操作
9.2.5删除操作
9.3设置数据显示
9.4本章小结
9.5习题
第10章高级Windows控件
10.1使用RichTextBox控件
10.2实现“编辑”菜单中的剪贴板功能
10.3使用“字体”对话框实现字体编辑功能
10.4使用“颜色”对话框实现颜色编辑功能
10.5使用“自定义”对话框实现“帮助”功能
10.6实现“查找”与“替换”功能
10.7实现提示保存文件功能
10.8实现打印和预览功能
10.9其他高级控件
10.9.1轨迹条控件
10.9.2进度条
10.9.3图片框控件
10.10本章小结
10.11习题
第11章文件和流
11.1文件和流概述
11.2读写文本文件
11.2.1读取文本文件
11.2.2写入文本文件
11.3读写二进制文件
11.3.1以二进制方式读取文件内容
11.3.2以二进制方式写入文件内容
11.4读写基本数据类型
11.4.1直接写入简单数据类型
11.4.2直接读取简单数据类型
11.5数据流其他常用方法
11.6文件管理
11.6.1文件管理概述
11.6.2文件夹管理
11.7本章小结
11.8习题
第12章多线程技术
12.1使用多线程
12.1.1操纵多线程
12.1.2线程的优先级
12.2线程同步
12.2.1使用线程同步
12.2.2避免线程死锁
12.3本章小结
12.4习题
第13章GDI+高级编程
13.1Graphics类
13.1.1画笔类Pen
13.1.2画刷类Brush
13.2常见的绘制、填充图形的方法
13.2.1常见的绘制图形的方法
13.2.2常见的填充图形的方法
13.3图形的平移、变形和旋转操作
13.4本章小结
13.5习题
参考文献