C#编程语言基础和应用
书 号:9787113135355
丛 书 名:高等学校计算机类课程应用型人才培养规划教材
作 者:张世明 朱彬
译 者:
开 本:16开
装 帧:平装
正文语种:
出 版 社:中国铁道出版社有限公司
定 价:30元
-
内容简介
本书以微软VisualStudio.NET2005作为工作平台,用通俗易懂的语言、生动的实例和深入浅出的叙述方式,详细地介绍了使用C#进行WinForm应用程序开发应该掌握的知识和技术。全书共分10章,主要内容包括:VisualStudio2005集成开发环境、C#的编程基础、面向对象编程、常用标准控件的使用、Windows应用程序开发、GDI+编程、文件操作、数据库应用、水晶报表等内容。此外,在每章的最后还提供了难度不同的习题,以帮助广大读者复习、巩固、掌握本书的主要内容、基本概念和基本编程技术。 -
前言
前 言
C#是Microsoft公司推出的一种全新语言,是为其全新的平台.NET Framework“量身定做”的。C#具有功能丰富、表达能力强、应用面广、目标程序效率高、可移植性强和使用灵活方便等特点,已成为近年来国内外迅速推广使用的编程语言。因此,在Microsoft环境中开发应用程序时,C#常常成为所有语言中的首选,并成为广大程序员学习的首要语言。更重要的是,C#不仅是一种设计非常优秀的语言,而且通过使用C#可以使程序员养成良好的编程风格(特别是面向对象的编程方式)。C#虽然建立在强大而复杂的C++语言的基础上,继承了C++的强大功能,但没有C++那么复杂。
C#和Java都是在C++基础上发展起来的,都全面实现了面向对象的思想:封装、继承、多态。正因为C#和Java都是源于C++,所以这两种面向对象的语言有许多相似之处:编译结果都是跨平台和跨语言的、支持自动垃圾回收机制、没有头文件、取消了指针操作、支持单重继承等。但是,C#和Java又是相互独立、自成体系、风格各异的两种不同语言。尤其需要指出的是,在C#的发展过程中,不仅吸收了Java的长处,也整合了其他语言,例如Delphi的强大开发功能,使其在功能的健全上毫不逊色于其他各种面向对象编程语言,非常适合初学者学习程序设计。
正由于C#博采众家之长,同时又充分发挥自身的优势,所以在众多Windows下的开发工具中,C#是目前面向对象和控件开发性能最好的工具之一。它使用Microsoft Windows图形用户界面的许多先进特性和设计思想,采用了可重复利用的、完整的面向对象程序方法。
编写目的
本书是一本以Visual Studio 2005为蓝本、详尽介绍C#的基础教材,其目的是全面系统地向读者介绍C#的概念、编程工具和编程方法,同时为读者熟悉和理解.NET体系结构的工作原理提供所需的背景知识。
编写原则
在体系结构上充分考虑读者的心理特点,将难点分散,逐步深入。C#概念较多,语法规则又较复杂,如果将这些复杂的概念、规则集中在一章或两章进行讲授,对初学者来说很难接受,甚至会造成“C#难懂、难学、深不可测”的错觉,学生的学习积极性也会受挫伤。为了减轻读者的心理负担,在体系结构安排上,在照顾到知识点覆盖面的前提下,随着内容的自然发展,将相关的定义、概念、规则分散在各个章节,起到了逐步深入和难点“化整为零”的作用。
本书自始至终强调“边学边做”,始终把如何正确、熟练地运用C#进行程序设计作为首要任务,所列举的例题也是教会学生如何使用C#,而不是偏重繁复的算法设计。
“案例驱动”使抽象的内容具体化、形象化。在每一章为了解释某个概念或某个语法规则,都辅以读者易于理解的例题,这些例题并不涉及太多的软硬件知识,不会超过一般读者掌握、理解的范围。
本书在内容选材上充分照顾了读者的不同程度和不同需要。书中凡带有星号(*)的章节或习题,表明有一定难度,读者可以有选择性地学习。
本书配备有电子教学课件,免费提供给教师进行多媒体教学和读者自学时使用,需要时可以通过http://www.edusources.net免费下载。
适用对象
本书适合作为计算机专业或相关专业的C#程序设计课程的教材或教学参考书,也可作为非计算机专业的参考书或教材,还可作为IT界程序员和技术人员的工具书或参考手册。
学习本书,一般不要求读者具有专门的计算机软硬件知识,也不要求具有足够的编程经验,只要通过对本书的学习,并加以实践,就能掌握本书的内容。但对有特殊需要的读者或技术人员,如果对C、C++、Java或者Delphi等有所了解,将会对深入学习本书更为有益。
内容结构
本教材共分10章,各章内容如下:
第1章 C#开发环境,内容包括:C#概述、安装Visual Studio、Visual Studio环境、Visual C#项目、C#程序设计过程和Visual Studio的帮助。
第2章 C#语言基础,内容包括:C#应用程序结构、数据类型、常量和变量的定义、运算符和表达式、语句。
第3章 面向对象程序设计,内容包括:面向对象程序设计概念、类、方法、继承和多态、域和属性、名字空间。
第4章 窗体与控件,内容包括:C#窗体简介、窗体设计、C#常用控件、C#交互界面设计。
第5章 界面设计,内容包括:菜单设计、工具栏设计、状态栏设计。
第6章 对话框和窗体调用,内容包括:对话框调用、窗体间调用、MDI程序。
第7章 GDI+图像编程,内容包括:GDI+绘图基础、C#图像处理基础。
第8章 文件操作,内容包括:C#文件处理和管理、C#文件操作、C#文件夹操作和文件流操作。
第9章 数据库编程,内容包括:SQL Server数据库管理、数据库表管理、连接数据库、执行SQL命令、数据读取器和数据集、数据适配器、显示数据和数据集设计器。
第10章 水晶报表与打印,内容包括:水晶报表概述、报表设计概念、NET下水晶报表传递数据和Windows打印组件的使用。
编写工作
本书由上海第二工业大学张世明老师和朱彬老师编写。其中,第1章~第5章由张世明老师编写,第6章~第10章由朱彬老师编写,全书由张世明老师统稿。
建议总教学时数
本书建议总教学时数为64学时。鉴于“C#程序设计”是一门实践性强的技术基础课程,建议上机实习时数应占总学时数的1/3以上,即不少于24学时。
鸣谢
本书由华东计算技术研究所陈涵生研究员担任主审,他在百忙之中拨冗审阅了全部书稿,并提出了宝贵的修改意见;在本书在编写过程中还得到了上海海事大学周广声教授的大力支持、帮助和指导;中国铁道出版社为本书的编辑出版做了大量工作。对上述支持和关心本书编写、出版的同志,在此一并表示诚挚的感谢!在本书的写作过程中参考了他人编写的文献资料,在此也向相关的作者深表谢意。
由于编者水平有限,加之时间仓促,书中难免有不足与疏漏之处,敬请读者批评指正!
编 者
2011年7月 -
目录
目 录
第1章 C#开发环境 1
1.1 C#概述 2
1.1.1 C#的特点 2
1.1.2 C#与.NET的关系 4
1.2 安装Visual Studio 4
1.2.1 硬件要求 4
1.2.2 安装步骤 5
1.3 Visual Studio环境 7
1.3.1 Visual Studio主窗口 7
1.3.2 编辑器与Windows窗体设计器 8
1.3.3 解决方案资源管理器和项目属性页 9
1.3.4 编译器、调试器和错误列表 9
1.3.5 工具箱 10
1.3.6 “属性”窗口 10
1.4 Visual C#项目 11
1.4.1 创建新项目 11
1.4.2 项目中的内容 12
1.4.3 修改项目属性 13
1.4.4 生成与调试 14
1.5 C#程序设计过程 14
1.5.1 设置工作区 14
1.5.2 定义用户界面 15
1.5.3 设置属性 16
1.5.4 添加事件 16
1.5.5 运行项目 17
1.5.6 保存文件 17
1.5.7 打开项目 17
1.6 Visual Studio的帮助 19
小结 21
习题 21
第2章 C#语言基础 22
2.1 C#应用程序结构 23
2.1.1 C#的应用程序组成 23
2.1.2 保留字和标准指令符 24
2.1.3 标识符 25
2.1.4 注释 25
2.1.5 控制台程序中的标准输入和输出 26
2.2 数据类型 28
2.2.1 值类型 28
2.2.2 引用类型 34
2.2.3 类型转换 38
2.3 常量和变量的定义 41
2.3.1 常量 41
2.3.2 变量 41
2.4 运算符和表达式 42
2.4.1 运算符 42
2.4.2 表达式 45
2.5 语句 45
2.5.1 赋值语句 45
2.5.2 复合语句 45
2.5.3 条件语句 45
2.5.4 循环语句 49
2.5.5 跳转语句 51
小结 54
习题 54
第3章 面向对象程序设计 56
3.1 面向对象程序设计概念 57
3.1.1 结构化程序设计方法 57
3.1.2 面向对象的程序设计方法 57
3.1.3 面向对象程序设计的基本概念 58
3.2 类 59
3.2.1 类的定义 59
3.2.2 保护方式 60
3.2.3 类实例化 60
3.2.4 类的成员 61
3.3 方法 62
3.3.1 方法声明 62
3.3.2 方法参数 63
3.3.3 静态方法 66
3.3.4 构造函数 66
3.3.5 析构函数 68
*3.3.6 方法重载 68
3.4 继承和多态 70
3.4.1 继承 70
3.4.2 覆盖 71
*3.4.3 抽象类 72
*3.4.4 多态 73
3.5 域和属性 75
3.5.1 域 75
3.5.2 属性 77
3.6 命名空间 79
3.6.1 编译单元 79
3.6.2 命名空间声明 79
3.6.3 命名空间成员 80
3.6.4 using指令 80
小结 86
习题 87
第4章 窗体与控件 88
4.1 C#窗体 88
4.1.1 窗体与窗口 88
4.1.2 窗体属性 89
4.1.3 窗体方法 90
4.1.4 窗体事件 91
4.2 窗体设计 91
4.2.1 新建窗体 92
4.2.2 设置窗体属性 93
4.2.3 添加控件 93
4.2.4 编辑控件 94
4.2.5 设置控件属性 95
4.2.6 Tab顺序 95
4.2.7 保存文件 95
4.2.8 运行程序 95
4.3 文本型控件 96
4.3.1 Label控件 96
4.3.2 LinkLabel控件 97
4.4 按钮型控件 97
4.4.1 Button控件 97
4.4.2 RadioButton控件 98
4.4.3 CheckBox控件 98
4.4.4 按钮型控件实例 99
4.5 编辑型控件 101
4.5.1 TextBox控件 101
4.5.2 MaskedTextBox控件 102
4.5.3 NumericUpDown控件 103
4.5.4 RichTextBox控件 104
4.5.5 编辑型控件实例 106
4.6 列表框型控件 108
4.6.1 ListBox控件 108
4.6.2 CheckedListBox控件 110
4.6.3 ComboBox控件 110
4.6.4 列表框型控件实例 111
4.7 滑块型控件 113
4.7.1 HScrollBar控件和VScrollBar控件 113
4.7.2 TrackBar控件 114
4.7.3 滑块型控件实例 114
4.8 容器型控件 116
4.8.1 GroupBox控件 116
4.8.2 Panel控件 117
4.8.3 TabControl控件 118
4.9 运行时改变窗体 118
4.9.1 运行时设置属性 118
4.9.2 运行时创建控件 120
小结 121
习题 121
第5章 界面设计 123
5.1 菜单设计简介 124
5.1.1 菜单结构 124
5.1.2 菜单命令项的作用 124
5.1.3 菜单设计器 124
5.2 主菜单设计 125
5.2.1 添加主菜单设计器 125
5.2.2 添加菜单命令项 125
5.2.3 菜单命令项分组 126
5.2.4 菜单命令项热键 126
5.2.5 调整菜单命令项 126
5.2.6 创建级联菜单 127
5.2.7 菜单命令响应 127
5.2.8 图形菜单 129
5.3 运行时设置菜单 130
5.3.1 菜单命令灰显 131
5.3.2 隐藏菜单命令 131
5.3.3 改变菜单命令文本 132
5.3.4 菜单命令复选标记 132
5.3.5 创建动态菜单 132
5.4 快捷菜单设计 134
5.4.1 快捷菜单的设计 134
5.4.2 快捷菜单的响应 135
5.5 工具栏设计 136
5.5.1 添加工具栏 136
5.5.2 添加工具栏成员 136
5.5.3 添加事件响应 137
5.5.4 动态设置成员属性 137
5.5.5 动态加载工具栏成员 138
5.6 状态栏设计 139
5.6.1 添加状态栏 140
5.6.2 添加状态标签 140
5.6.3 显示提示信息 140
5.6.4 显示动态信息 141
小结 142
习题 143
第6章 对话框和窗体调用 145
6.1 对话框调用 145
6.1.1 “打开”和“保存”对话框控件 146
6.1.2 “字体”和“颜色”对话框控件 149
6.1.3 “打印”、“页面设置”和“打印预览”对话框控件 152
6.2 窗体调用 158
6.2.1 窗体间调用 158
6.2.2 消息框调用 162
6.3 MDI程序 163
6.3.1 MDI窗体设计 163
6.3.2 子窗体排列 166
6.3.3 MDI的菜单设计 167
小结 168
习题 169
第7章 GDI+图像编程 170
7.1 GDI+绘图基础 170
7.1.1 GDI+概述 171
7.1.2 Graphics类 171
7.1.3 常用画图对象 173
7.1.4 画刷和画刷类型 177
7.2 C#图像处理基础 184
7.2.1 C#图像处理概述 184
7.2.2 图像的输入和保存 186
7.2.3 彩色图像处理 188
小结 196
习题 197
第8章 文件操作 198
8.1 C#文件处理和管理 199
8.2 C#文件操作 200
8.2.1 File类 200
8.2.2 FileInfo类 204
8.2.3 File类和FileInfo类的区别 207
8.3 C#文件夹操作 208
8.3.1 文件路径 208
8.3.2 Directory类 208
8.3.3 DirectoryInfo类 209
8.3.4 Directory和DirectoryInfo的区别 212
8.4 文件流操作 212
8.4.1 C#流的概念 212
8.4.2 文件流应用 213
8.4.3 文本文件的读/写 218
8.4.4 二进制文件的读/写 223
小结 226
习题 226
第9章 数据库编程 228
9.1 SQL Server数据库管理 229
9.1.1 Management Studio环境 229
9.1.2 添加和删除数据库 230
9.1.3 备份和还原数据库 233
9.2 数据库表管理 236
9.2.1 创建表 237
9.2.2 键和索引 238
9.3 连接数据库 239
9.3.1 ADO.NET概述 239
9.3.2 数据库连接类DbConnection 240
9.4 执行SQL命令 241
9.4.1 数据库命令类DbCommand 242
9.4.2 SQL参数类DbParameter 243
9.5 DbDataReader和DataSet 244
9.5.1 数据读取器DbDataReader 244
9.5.2 数据集DataSet概述 246
9.5.3 数据表、数据列和数据行 247
9.5.4 构建表结构 248
9.5.5 编辑数据 249
9.5.6 数据行状态 249
9.6 数据适配器 250
9.6.1 DbDataAdapter概述 250
9.6.2 填充数据 251
9.6.3 获取表架构 252
9.6.4 命令生成类DBCommandBuilder 253
9.6.5 更新数据库 253
9.7 显示数据 255
9.7.1 数据表格控件DataGridView 255
9.7.2 控制DataGridView外观和行为 256
9.8 数据集设计器 258
9.8.1 添加数据集 258
9.8.2 添加查询 259
小结 261
习题 262
第10章 水晶报表与打印 263
10.1 水晶报表概述 263
10.2 报表设计概念 264
10.2.1 决定报表内容 264
10.2.2 设计纸张原型 266
10.3 .NET环境下水晶报表传递数据的两种模式 267
10.3.1 拉模式 267
10.3.2 推模式 269
10.3.3 水晶报表中数据的分组、排序 271
10.3.4 水晶报表中数据的筛选 273
10.3.5 在水晶报表中使用图表 276
10.4 Windows打印控件 278
10.4.1 Windows打印控件简介 278
10.4.2 使用打印控件打印订单信息 279
小结 281
习题 281
参考文献 282 -
作者介绍
主要著译者顺序姓名学历职称学科专长通讯地址1 张世明硕士 副教授 工作单位上海第二工业大学 邮政编码200336 电话021-62919292、13301991111 2 工作单位 邮政编码 电话 3 工作单位 邮政编码 电话 审校者(主审者) 学历 工作单位 邮政编码 电话 职称 工作单位 邮政编码 电话 -
编辑推荐
本书按照Visual Studio25的体系,系统、全面、深入地介绍C#的各种功能。在讲解功能的同时,结合可视化的编程方法,选取简短、易学的实用例子帮助读者深入理解所学的内容。 -
书评书荐
-
附件下载
图书推荐