《C#应用开发与实践》PDF下载

  • 购买积分:13 如何计算积分?
  • 作  者:胡学钢主编;刘东杰,吕进来副主编
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2012
  • ISBN:9787115297198
  • 页数:400 页
图书介绍:本书作为C#语言课程的教材,系统全面的介绍了有关C#程序开发所涉及的各类知识。全书共分20章,每章内容都与实例紧密结合,有助于学生理解知识、应用知识,达到学以致用的目的。

第1章 初识C#语言 1

1.1 C#概述 1

1.1.1 C#发展历程 1

1.1.2 C#语言特点 2

1.1.3 C#语言编程环境 2

1.2 .NET Framework简介 3

1.2.1 什么是.NET Framework 3

1.2.2 C#与.NET Framework的关系 4

1.3 安装与卸载Visual Studio 2010 4

1.3.1 系统必备 4

1.3.2 安装Visual Studio 2010 4

1.3.3 卸载Visual Studio 2010 6

1.4 熟悉Visual Studio 2010开发环境 7

1.4.1 创建项目 8

1.4.2 窗体设计器 8

1.4.3 代码设计器 9

1.4.4 菜单栏 9

1.4.5 工具栏 10

1.4.6 工具箱面板 10

1.4.7 属性面板 11

1.5 Visual Studio 2010帮助系统 11

1.5.1 安装Help Library管理器 12

1.5.2 使用Help Library 15

1.6 综合实例——创建一个Windows应用程序 16

知识点提炼 17

习题 17

实验:安装Visual Studio 2010开发环境 17

实验目的 17

实验内容 18

实验步骤 18

第2章 C#程序的组成元素 19

2.1 编写第一个C#程序 19

2.2 C≠程序的基本组成 20

2.2.1 标识符 20

2.2.2 关键字 21

2.2.3 命名空间 21

2.2.4 类的介绍 23

2.2.5 Main方法 23

2.2.6 C#语句 24

2.2.7 代码注释 24

2.3 综合实例——在控制台中输出笑脸图案 25

知识点提炼 25

习题 25

实验:声明指定命名空间并定义类 26

实验目的 26

实验内容 26

实验步骤 26

第3章 变量和常量 28

3.1 数据类型 28

3.1.1 值类型 28

3.1.2 引用类型 32

3.1.3 类型转换 33

3.2 常量和变量 36

3.2.1 常量的声明和使用 36

3.2.2 变量的声明和使用 37

3.3 综合实例——使用值类型和引用类型输出不同的字段 39

知识点提炼 40

习题 40

实验:判断当前系统日期是星期几 40

实验目的 40

实验内容 41

实验步骤 41

第4章 表达式及运算符 42

4.1 表达式 42

4.2 运算符 43

4.2.1 算术运算符 43

4.2.2 赋值运算符 45

4.2.3 关系运算符 46

4.2.4 逻辑运算符 48

4.2.5 移位运算符 50

4.2.6 其他特殊运算符 51

4.3 运算符优先级 53

4.4 综合实例——在控制台中实现模拟登录 54

知识点提炼 54

习题 55

实验:通过条件运算符判断奇偶数 55

实验目的 55

实验内容 55

实验步骤 55

第5章 流程控制语句 56

5.1 选择语句 56

5.1.1 if条件选择语句 56

5.1.2 switch多分支选择语句 61

5.2 循环语句 63

5.2.1 while循环语句 63

5.2.2 do…while循环语句 64

5.2.3 for循环语句 66

5.2.4 foreach循环语句 68

5.3 跳转语句 69

5.3.1 break语句 69

5.3.2 continue语句 69

5.3.3 return语句 70

5.4 综合实例——哥德巴赫猜想算法的实现 71

知识点提炼 72

习题 73

实验:计算前N个自然数之和 73

实验目的 73

实验内容 73

实验步骤 73

第6章 字符与字符串 74

6.1 字符 74

6.1.1 字符的使用 74

6.1.2 转义字符的使用 76

6.2 字符串 78

6.2.1 字符串概述 78

6.2.2 比较字符串 78

6.2.3 格式化字符串 80

6.2.4 截取字符串 82

6.2.5 分割字符串 82

6.2.6 插入和填充字符串 83

6.2.7 复制字符串 84

6.2.8 替换字符串 86

6.2.9 删除字符串 86

6.2.10 可变字符串 87

6.3 正则表达式 90

6.4 综合实例——根据汉字获得其区位码 92

知识点提炼 93

习题 93

实验:将字符串中的每个字符颠倒输出 93

实验目的 93

实验内容 94

实验步骤 94

第7章 数组和集合 95

7.1 一维数组 95

7.1.1 一维数组的概述 95

7.1.2 一维数组的声明与使用 96

7.2 二维数组 98

7.2.1 二维数组的概述 98

7.2.2 二维数组的声明与使用 98

7.3 数组操作 100

7.3.1 输入与输出数组 100

7.3.2 数组的排序 102

7.3.3 添加和删除数组元素 103

7.4 ArrayList集合类 106

7.4.1 ArrayList类概述 106

7.4.2 遍历ArrayList集合 107

7.4.3 添加ArrayList元素 107

7.4.4 删除ArrayList元素 108

7.5 综合实例——设计一个简单客车售票程序 109

知识点提炼 110

习题 111

实验:使用数组解决约瑟夫环问题 111

实验目的 111

实验内容 111

实验步骤 111

第8章 面向对象程序设计基础 113

8.1 类与对象 113

8.1.1 面向对象概述 113

8.1.2 类的概念 114

8.1.3 类的声明 114

8.1.4 构造函数和析构函数 115

8.1.5 对象的声明和实例化 116

8.1.6 类与对象的关系 117

8.2 方法 118

8.2.1 方法的声明 118

8.2.2 方法的分类 119

8.2.3 方法的重载 120

8.3 字段、属性和索引器 121

8.3.1 字段 121

8.3.2 属性 122

8.3.3 索引器 124

8.4 类的面向对象特性 125

8.4.1 类的封装 125

8.4.2 类的继承 127

8.4.3 类的多态 128

8.5 结构 129

8.5.1 结构概述 129

8.5.2 结构的使用 130

8.6 综合实例——定义商品库存结构 131

知识点提炼 133

习题 133

实验:通过重载方法计算图形周长 133

实验目的 133

实验内容 134

实验步骤 134

第9章 异常处理与调试 135

9.1 异常处理概述 135

9.2 异常处理语句 136

9.2.1 try…catch语句 136

9.2.2 throw语句 137

9.2.3 try…catch…finally语句 139

9.3 程序调试概述 140

9.4 常用的程序调试操作 140

9.4.1 断点操作 140

9.4.2 开始、中断和停止程序的执行 141

9.4.3 单步执行 143

9.4.4 运行到指定位置 143

9.5 综合实例——捕获数组越界异常 143

知识点提炼 144

习题 145

实验:自定义异常输出信息 145

实验目的 145

实验内容 145

实验步骤 145

第10章 Windows窗体及控件 147

10.1 Windows窗体介绍 147

10.1.1 设置窗体属性 147

10.1.2 调用窗体方法 151

10.1.3 触发窗体事件 152

10.2 Windows窗体的调用 154

10.2.1 调用模式窗体 154

10.2.2 调用非模式窗体 154

10.3 基本Windows控件 155

10.3.1 Label控件 155

10.3.2 TextBox控件 155

10.3.3 RichTextBox控件 157

10.3.4 Button控件 158

10.3.5 GroupBox控件 159

10.3.6 TabControl控件 160

10.4 菜单、工具栏与状态栏 161

10.4.1 MenuStrip控件 161

10.4.2 ToolStrip控件 162

10.4.3 StatusStrip控件 163

10.5 高级控件与组件 165

10.5.1 列表选择控件 165

10.5.2 视图控件 167

10.5.3 ImageList组件 171

10.5.4 Timer组件 173

10.6 综合实例——进销存管理系统登录窗口 175

知识点提炼 176

习题 176

实验:在窗体中的滚动字幕 176

实验目的 176

实验内容 177

实验步骤 177

第11章 ADO.NET操作数据库 178

11.1 ADO.NET概述 178

11.2 Connection数据连接对象 179

11.2.1 熟悉Connection对象 179

11.2.2 数据库连接字符串 180

11.2.3 应用SqlConnection对象连接数据库 181

11.3 Command命令执行对象 181

11.3.1 熟悉Command对象 181

11.3.2 应用Command对象添加数据 182

11.3.3 应用Command对象调用存储过程 183

11.4 DataReader数据读取对象 185

11.4.1 理解DataReader对象 185

11.4.2 应用DataReader对象读取数据 186

11.5 DataSet和DataAdapter数据操作对象 187

11.5.1 熟悉DataSet对象和DataAdapter对象 187

11.5.2 应用DataAdapter对象填充DataSet数据集 189

11.5.3 应用DataAdapter对象更新数据库中的数据 190

11.5.4 区别DataSet对象与DataReader对象 192

11.6 数据操作控件 192

11.6.1 应用DataGridView控件 192

11.6.2 应用BindingSource组件 194

11.7 综合实例——商品月销售统计表 197

知识点提炼 200

习题 200

实验:使用二进制存取用户头像 200

实验目的 200

实验内容 201

实验步骤 201

第12章 面向对象高级技术 202

12.1 接口 202

12.1.1 接口的概念及声明 202

12.1.2 接口的实现与继承 203

12.1.3 显式接口成员实现 206

12.2 抽象类与抽象方法 207

12.2.1 抽象类概述及声明 207

12.2.2 抽象方法概述及声明 208

12.2.3 抽象类与抽象方法的使用 208

12.2.4 抽象类与接口 210

12.3 密封类与密封方法 210

12.3.1 密封类概述及声明 210

12.3.2 密封方法概述及声明 210

12.3.3 密封类与密封方法的使用 211

12.4 迭代器 212

12.4.1 迭代器概述 212

12.4.2 迭代器的使用 213

12.5 分部类 213

12.5.1 分部类概述 214

12.5.2 分部类的使用 214

12.6 泛型概述 215

12.7 泛型的使用 216

12.7.1 类型参数T 216

12.7.2 泛型接口 216

12.7.3 泛型方法 217

12.8 综合实例——利用接口实现选择不同语言 218

知识点提炼 219

习题 219

实验:通过重写抽象方法实现多态性 220

实验目的 220

实验内容 220

实验步骤 220

第13章 委托与事件 222

13.1 委托 222

13.1.1 委托的概述 222

13.1.2 委托的应用 223

13.2 匿名方法 223

13.2.1 匿名方法概述 223

13.2.2 匿名方法的应用 224

13.3 事件 225

13.3.1 委托的发布和订阅 225

13.3.2 事件的发布和订阅 227

13.3.3 EventHandler类 227

13.4 Windows事件概述 229

13.5 综合实例——运用委托实现两个数的四则运算 230

知识点提炼 232

习题 232

实验:向指定事件中添加自定义内容 232

实验目的 232

实验内容 232

实验步骤 232

第14章 文件与流 234

14.1 System.IO命名空间 234

14.2 文件基本操作 235

14.2.1 文件操作类 235

14.2.2 创建文件 236

14.2.3 打开文件 237

14.2.4 判断文件是否存在 240

14.2.5 复制或移动文件 241

14.2.6 删除文件 242

14.3 文件夹基本操作 242

14.3.1 文件夹操作类 243

14.3.2 创建文件夹 243

14.3.3 判断文件夹是否存在 244

14.3.4 移动文件夹 244

14.3.5 删除文件夹 245

14.3.6 遍历文件夹 245

14.4 数据流基础 250

14.4.1 流操作类介绍 250

14.4.2 文件流 250

14.4.3 缓存流 253

14.5 流读写文件 255

14.5.1 文本文件的读写 255

14.5.2 二进制文件的读写 257

14.6 综合实例——复制文件时显示进度条 259

知识点提炼 261

习题 261

实验:比较两个文件的内容是否相同 261

实验目的 261

实验内容 261

实验步骤 262

第15章 网络与多线程 263

15.1 网络编程基础 263

15.1.1 System.Net命名空间 263

15.1.2 System.Net.Sockets命名空间 269

1 5.2 线程简介 273

15.2.1 单线程简介 274

15.2.2 多线程简介 274

15.3 线程的基本操作 275

15.3.1 Thread类 275

15.3.2 创建线程 276

15.3.3 线程的挂起与恢复 277

15.3.4 线程休眠 278

15.3.5 终止线程 279

15.3.6 线程的优先级 280

15.3.7 线程同步 281

15.4 综合实例——设计点对点聊天程序 285

知识点提炼 286

习题 286

实验:使用多线程扫描局域网IP地址 287

实验目的 287

实验内容 287

实验步骤 287

第16章 GDI+绘图 289

16.1 GDI+绘图基础 289

16.1.1 GDI+概述 289

16.1.2 创建Graphics对象 290

16.1.3 创建Pen对象 290

16.1.4 创建Brush对象 291

16.2 基本图形绘制 293

16.2.1 GDI+中的直线和矩形 294

16.2.2 GDI+中的椭圆、弧和扇形 296

16.2.3 GDI+中的多边形 298

16.3 综合实例——绘制图形验证码 299

知识点提炼 300

习题 301

实验:使用双缓冲技术绘图 301

实验目的 301

实验内容 301

实验步骤 301

第17章 C#语言新特性 303

17.1 简述C#的新技术 303

17.2 列举C#语言的新特性 304

17.2.1 隐式类型var 304

17.2.2 对象初始化器 305

17.2.3 集合初始化器 306

17.2.4 扩展方法 307

17.2.5 匿名类型对象 308

17.2.6 Lambda表达式 309

17.2.7 自动实现属性 311

17.2.8 LINQ技术 312

17.3 综合实例——使用LINQ过滤文章中包含特殊词语的句子 316

知识点提炼 317

习题 317

实验:使用LINQ生成随机数 318

实验目的 318

实验内容 318

实验步骤 318

第18章 综合案例——进销存管理系统 319

18.1 需求分析 319

18.2 总体设计 320

18.2.1 系统目标 320

18.2.2 构建开发环境 320

18.2.3 系统功能结构 320

18.2.4 业务流程图 321

18.3 数据库设计 322

18.3.1 数据库概要说明 322

18.3.2 数据库E-R图 323

18.3.3 数据表结构 325

18.4 公共类设计 327

18.4.1 DataBase公共类 327

18.4.2 BaseInfo公共类 330

18.5 系统主要模块开发 334

18.5.1 系统主窗体设计 334

18.5.2 库存商品管理模块设计 335

18.5.3 进货管理模块概述 340

18.5.4 商品销售排行模块概述 346

18.6 系统打包部署 348

第19章 课程设计——雷速下载专家 352

19.1 课程设计目的 352

19.2 功能描述 352

19.3 总体设计 353

19.3.1 构建开发环境 353

19.3.2 软件功能结构 353

19.3.3 业务流程图 354

19.4 公共类设计 354

19.4.1 Locations类设计 354

19.4.2 DownLoad类设计 356

19.4.3 xuchuan类设计 357

19.5 实现过程 358

19.5.1 雷速主窗体设计 358

19.5.2 添加下载任务模块 364

19.6 调试运行 367

19.6.1 无法连接到下载服务器 367

19.6.2 无法使用多线程下载资源 367

19.7 课程设计总结 367

19.7.1 技术总结 368

19.7.2 经验总结 368

第20章 课程设计——快递单打印系统 369

20.1 课程设计目的 369

20.2 功能描述 370

20.3 总体设计 370

20.3.1 构建开发环境 370

20.3.2 软件功能结构 370

20.3.3 业务流程图 371

20.4 数据库设计 372

20.4.1 实体E-R图 372

20.4.2 数据表设计 373

20.4.3 存储过程设计 374

20.5 技术准备 376

20.6 实现过程 378

20.6.1 快递单设置 378

20.6.2 快递单打印 388

20.6.3 快递单查询 392

20.7 调试运行 396

20.7.1 空引用异常调试 396

20.7.2 数组越界异常调试 397

20.8 课程设计总结 399

20.8.1 技术总结 399

20.8.2 经验总结 400