《C#编程兵书》PDF下载

  • 购买积分:15 如何计算积分?
  • 作  者:张志强,胡君编著
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2013
  • ISBN:9787121207402
  • 页数:489 页
图书介绍:本书针对初学和自学读者的特点,以通俗易懂的语言介绍C#语言及其基础开发。内容包括语言的发展、环境配置、基本语法、流程控制语句、字符串处理、数组、图形界面设计、输入输出、处理异常和连接数据库。本书运用大量示例,让读者在实战中体会编程的乐趣。本书适合想从事软件开发的入门人员、C#自学者及初级软件程序员和信息技术人员阅读。

第1篇 开发环境与C#语言基础 3

第1章 仙人指路:C#与.NET Framework简介 3

1.1 什么是.NET Framework 3

1.1.1 .NET Framework结构 3

1.1.2 .NET Framework的优点 4

1.2 什么是C 4

1.2.1 C#语言的优点 5

1.2.2 C#语言的特点 6

1.3 C#的开发工具Visual Studio 7

1.3.1 Visual Studio 2010的下载和安装 8

1.3.2 Visual Studio的特点 10

1.3.3 Visual Studio解决方案和项目文件的组织结构 11

1.4 第一个C#程序:Hello World 12

1.4.1 认识Visual Studio.NET开发环境 12

1.4.2 第一个Windows Console控制台应用程序 13

1.4.3 第一个Windows Form窗体程序 15

1.4.4 第一个ASP.NET程序 18

1.4.5 源代码简短分析 20

1.5 C#程序的特点 21

1.6 小结 22

1.7 习题 22

第2章 抛砖引玉:C#程序设计基础 24

2.1 C#中的注释 24

2.1.1 行注释和块注释 24

2.1.2 注释规范 24

2.2 变量和常量 25

2.2.1 命名变量 25

2.2.2 变量的声明和使用 25

2.2.3 常量的声明和使用 27

2.3 常用数据类型 28

2.4 自定义数据类型 30

2.4.1 认识枚举类型 30

2.4.2 枚举编程示例 31

2.4.3 认识结构类型 32

2.4.4 结构编程示例 32

2.5 类型转换 33

2.5.1 隐式转换 34

2.5.2 显式转换 35

2.6 运算符 36

2.6.1 算术运算符 36

2.6.2 字符串运算符 37

2.6.3 赋值运算符 38

2.6.4 逻辑运算符 38

2.6.5 位运算符 39

2.6.6 自增和自减运算符 40

2.6.7 其他运算符 41

2.6.8 运算符的优先级 41

2.7 流程控制 42

2.7.1 if语句 42

2.7.2 switch语句 43

2.7.3 while语句 45

2.7.4 for语句 46

2.7.5 break语句控制循环 46

2.7.6 continue语句控制循环 47

2.7.7 return语句控制循环 48

2.8 控制台输入和输出 48

2.8.1 向控制台输入 48

2.8.2 从控制台输出 49

2.9 本章知识点综合应用 49

2.9.1 C#数据类型与比较 49

2.9.2 字符类型与数字类型的转换 51

2.9.3 使用for语句 52

2.10 小结 54

2.11 习题 54

第2篇 C#面向对象编程 57

第3章 羽翼丰满:C#的面向对象 57

3.1 对象 57

3.2 类 57

3.2.1 声明类 57

3.2.2 类的属性 59

3.2.3 类的方法 60

3.2.4 创建类实例 62

3.2.5 类的构造函数 62

3.2.6 继承类 63

3.3 方法 64

3.3.1 方法的参数 64

3.3.2 使用构造函数 66

3.3.3 使用析构函数 67

3.3.4 使用静态方法 67

3.3.5 重载方法 68

3.3.6 访问父类方法 69

3.3.7 重载运算符 70

3.4 继承 71

3.5 多态 73

3.6 封装 75

3.7 命名空间 76

3.7.1 框架类库中的命名空间 76

3.7.2 命名空间的使用 77

3.8 本章知识点综合应用 78

3.8.1 类的继承 78

3.8.2 方法的改写 81

3.8.3 方法的重载 83

3.9 小结 84

3.10 习题 84

第4章 双管齐下:抽象类和接口 86

4.1 定义抽象类 86

4.2 接口 89

4.2.1 定义接口 89

4.2.2 一个类实现多个接口 92

4.2.3 实现多接口同名方法 94

4.2.4 使用is和as操作符实现接口转换 95

4.2.5 接口间的继承 96

4.3 本章知识点综合应用 98

4.3.1 显式实现接口方法 98

4.3.2 显式实现接口属性 100

4.4 小结 102

4.5 习题 103

第5章 无懈可击:调试异常与编码标准 105

5.1 调试 105

5.1.1 使用VS.NET错误报告 105

5.1.2 逻辑错误 105

5.1.3 单步执行程序 106

5.1.4 设置断点 107

5.1.5 设置断点技巧 108

5.2 Java异常 109

5.2.1 编译错误 109

5.2.2 运行错误 109

5.2.3 逻辑错误 110

5.2.4 异常处理机制 111

5.2.5 异常处理类 111

5.2.6 异常处理原则 114

5.3 异常处理语句 114

5.3.1 使用try...catch...finally语句 114

5.3.2 常见异常类型 116

5.3.3 创建和抛出自定义的异常 116

5.4 多异常的捕获 117

5.5.1 什么是多异常 117

5.5.2 异常的继承关系 120

5.5.3 捕获所有异常的方法 121

5.5 定义用户异常的方法 121

5.6 编码标准 124

5.6.1 编码结构 124

5.6.2 注释风格 125

5.6.3 命名规范 126

5.6.4 控制代码量 127

5.6.4 使用异常处理 128

5.7 本章知识点综合应用 128

5.7.1 创建自定义异常 128

5.7.2 获取异常信息 130

5.7.3 使用try...catch捕获异常 131

5.8 小结 134

5.9 习题 134

第6章 添砖加瓦:字符、字符串处理与正则表达式 136

6.1 字符Char 136

6.1.1 Char的声明及使用 136

6.1.2 转义字符 138

6.2 String类 140

6.2.1 简介 140

6.2.2 String与Char 140

6.2.3 字符串的查找 142

6.2.4 字符串的比较 143

6.2.5 字符串的获取 144

6.2.6 字符串的插入 146

6.2.7 字符串的删除 147

6.2.8 字符串的替换 148

6.3 StringBuilder类 149

6.3.1 StringBuilder的定义 149

6.3.2 字符串对象的追加 149

6.3.3 字符串的插入、删除与替换 150

6.3.4 StringBuilder与String的区别 151

6.4 正则表达式 152

6.4.1 System.Text.RegularExpression命名空间 152

6.4.2 正则表达式的语法 152

6.4.3 正则表达式验证用户输入 153

6.4.4 常用的一些正则表达式 154

6.5 本章知识点综合应用 156

6.6.1 使用正则表达式获取指定字符 156

6.6.2 通过CaptureCollection获取正则表达式的每个匹配对象信息 158

6.6.3 验证输入字符串是否是合法的电子邮件格式 160

6.6 小结 162

6.7 习题 162

第7章 兵分两路:数组与集合 164

7.1 数组的概念 164

7.1.1 什么是数组 164

7.1.2 数组的声明 164

7.1.3 数组的大小 165

7.1.4 数组的初始化 165

7.2 数组的使用 166

7.2.1 数组的遍历 166

7.2.2 获取数组的索引 167

7.2.3 数组元素清空 169

7.2.4 数组的查找 170

7.3 数组的排序 172

7.3.1 Sort方法排序 172

7.3.2 冒泡排序 174

7.4 集合 175

7.4.1 集合的概念 175

7.4.2 集合类 176

7.5 动态数组类ArrayList 177

7.5.1 ArrayList的声明 177

7.5.2 ArrayList元素的添加 177

7.5.3 ArrayList元素的删除 178

7.5.4 ArrayList元素的获取 180

7.5.5 ArrayList的遍历 181

7.5.6 ArrayList元素的查找 182

7.6 HashTable 183

7.7.1 HashTable的声明 183

7.7.2 HashTable元素的添加 184

7.7.3 HashTable元素的删除 185

7.7.4 HashTable元素的获取 187

7.7.5 HashTable的遍历 188

7.7.6 HashTable的查找 189

7.7 本章知识点综合应用 190

7.7.1 获取数组属性 190

7.7.2 数组参数的使用 193

7.7.3 操作List泛型集合 195

7.8 小结 197

7.9 习题 198

第8章 双龙出海:代理和事件 200

8.1 代理 200

8.1.1 什么是代理 200

8.1.2 代理所指向方法的类型和标识 200

8.1.3 代理引用的声明和使用 201

8.1.4 .NET Framework中的代理 204

8.1.5 代理做方法的参数 204

8.1.6 了解多重代理 206

8.1.7 多重代理的实现方法 206

8.1.8 怎样移除多重代理指向的方法 208

8.2 事件和事件处理 209

8.2.1 C#的事件处理 209

8.2.2 事件举例——时钟事件 210

8.2.3 多重事件的处理 212

8.2.4 利用事件传递数据 213

8.3 本章知识点综合应用 216

8.3.1 使用事件和代理 216

8.3.2 使用代理 218

8.4 小结 220

8.5 习题 220

第3篇 Windows程序编程 223

第9章 以逸待劳:Windows窗体应用程序 223

9.1 Windows应用程序 223

9.1.1 创建Windows应用程序 223

9.1.2 Windows窗体 224

9.1.3 解决方案管理器 225

9.2 Windows窗体控件 226

9.2.1 控件的属性 226

9.2.2 控件的事件 227

9.3 认识和使用窗体控件 227

9.3.1 按钮控件 228

9.3.2 标签控件 229

9.3.3 文本框控件 230

9.3.4 单选按钮控件 231

9.3.5 复选框控件 232

9.3.6 列表框控件 234

9.3.7 可选列表框控件 236

9.3.8 菜单 239

9.3.9 多文档界面应用程序 241

9.4 本章知识点综合应用 244

9.4.1 RequiredFieldValidator校验控件的使用 244

9.4.2 RangeValidator校验控件的使用 246

9.4.3 RegularExpressionValidator校验控件的使用 248

9.4.4 CompareValidator校验控件的使用 251

9.5 小结 254

9.6 习题 254

第10章 画龙点睛:GDI+绘制图形 256

10.1 GDI+的工作原理 256

10.1.1 Graphics对象 257

10.1.2 Pen类的用法 259

10.1.3 Font类的用法 260

10.2 GDI+画点 262

10.3 GDI+绘制曲线 263

10.4 用GDI+呈现图像 264

10.5 GDI+的用法 265

10.5.1 图像的缩放 265

10.5.2 图像的剪切 267

10.5.3 图像的旋转 268

10.5.4 图像的切换显示 269

10.6 本章知识点综合应用 269

10.6.1 窗体上绘制空心椭圆和空心矩形 270

10.6.2 使用DrawString绘制居中文本 271

10.6.3 使用DrawText绘制居中文本 272

10.6.4 使用复合模式控制Alpha混合 273

10.7 小结 274

10.8 习题 275

第4篇 C#的高级编程 279

第11章 按部就班:文件操作 279

11.1 文件操作概述 279

11.1.1 驱动器 279

11.1.2 目录 279

11.1.3 文件 280

11.1.4 文件夹 282

11.1.5 路径 283

11.2 流 284

11.2.1 操作流的类 284

11.2.2 文件流类FileStream 285

11.2.3 流写入类StreamWriter 287

11.2.4 流读取类StreamReader 288

11.2.5 二进制流写入类BinaryWriter 289

11.2.6 二进制流读取类BinaryReader 289

11.3 本章知识点综合应用 290

11.3.1 创建日志文件 290

11.3.2 对日志文件的读/写操作 292

11.3.3 复制文件 295

11.4 小结 297

11.5 习题 297

第12章 画龙点睛:可扩展标记语言XML 299

12.1 认识XML 299

12.1.1 文档对象模型的功能 300

12.1.2 用XPath查询XML文档 300

12.1.3 了解可扩展样式表语言XSL 301

12.1.4 用XML Schemas设置数据元素和属性 301

12.1.5 .NET中处理XML的相关类 302

12.2 使用XMLDOM进行编程 303

12.2.1 创建一个空的XML文档 305

12.2.2 向XML文档添加元素 306

12.2.3 更新XML文档中的元素 307

12.2.4 删除XML文档中的元素 310

12.2.5 加载和保存XML文档 311

12.3 用DataSet保存XML数据 311

12.3.1 不使用Schema文件加载XML文档 314

12.3.2 使用Schema文件加载XML文档 317

12.3.3 遍历XML文档 319

12.4 本章知识点综合应用 321

12.4.1 从XML文件中加载DataSet 321

12.4.2 从XML字符串中加载DataSet 323

12.4.3 将对象层次结构映射到XML数据 325

12.5 小结 328

12.6 习题 328

第13章 以一敌百:多线程编程 330

13.1 多线程的概念 330

13.1.1 什么是线程 330

13.1.2 单线程和多线程 330

13.2 线程的创建与控制 331

13.2.1 创建和启动线程 331

13.2.2 暂停和恢复线程 332

13.2.3 中断和终止线程 333

13.3 多线程 336

13.3.1 线程的优先级 336

13.3.2 lock关键字锁定线程 336

13.3.3 线程的同步 337

13.3.4 使用线程池 340

13.3.5 使用定时器 342

13.4 线程中的异常 344

13.5 线程安全 345

13.6 本章知识点综合应用 346

13.6.1 使用线程同步事件处理线程 346

13.6.2 同步线程的创建和使用 349

13.6.3 线程的创建与终止 351

13.7 小结 352

13.8 习题 352

第5篇 Web数据库开发 355

第14章 出奇制胜:Web网络编程应用 355

14.1 ASP.NET简介 355

14.1.1 什么是ASP.NET 355

14.1.2 IIS管理 356

14.1.3 ASP.NET特性 358

14.1.4 ASP.NET的优势 359

14.2 ASP.NET语法 360

14.2.1 剖析ASPX页面 360

14.2.2 <%%>嵌入代码 360

14.2.3 <Script>...</Script>嵌入代码 362

14.2.4 <%@Page...%>设置页面属性 364

14.2.5 <%@Import%>引入类库 364

14.2.6 使用<%--注释--%> 364

14.3 ASP.NET内置对象 365

14.3.1 Application对象保存数据 365

14.3.2 Session对象保存数据 366

14.3.3 Server对象 366

14.3.4 Request对象 367

14.3.5 Response对象 368

14.4 代码绑定 369

14.4.1 分离显示和逻辑功能 369

14.4.2 使用<%@CodeFile%>绑定代码 370

14.4.3 控件事件接收用户输入 372

14.5 本章知识点综合应用 373

14.5.1 获取Request类的相关信息 373

14.5.2 使用Response将信息输出到页面 375

14.5.3 使用Session存储信息 376

14.6 小结 378

14.7 习题 378

第15章 李代桃僵:Web程序常用控件 380

15.1 常用基本控件 380

15.1.1 文本框控件TextBox 380

15.1.2 按钮控件Button 381

15.1.3 单选按钮控件RadioButton 382

15.1.4 链接按钮控件LinkButton 383

15.1.5 下拉列表框控件DropDownList 383

15.1.6 列表框控件ListBox 385

15.1.7 复选框控件CheckBox 386

15.1.8 图像控件Image 388

15.2 数据验证控件 389

15.2.1 RequireFieldValidator控件强迫输入 389

15.2.2 CompareValidator控件验证输入 390

15.2.3 RangeValidator控件限制输入 392

15.2.4 RegularExpressionValidator控件验证输入 393

15.2.5 ValidationSummary控件显示未通过的验证 395

15.2.6 CustomValidator控件自定义验证 395

15.3 本章知识点综合应用 397

15.3.1 ComboBox控件和ListBox控件的数据绑定 397

15.3.2 RequiredFieldValidator校验控件的使用 398

15.3.3 RangeValidator校验控件的使用 400

15.4 小结 402

15.5 习题 403

第16章 直捣黄龙:ADo.NET访问数据库 405

16.1 数据库概述 405

16.1.1 数据库的组成 405

16.1.2 数据索引 405

16.1.3 数据库关系 405

16.2 常用的SQL语句 406

16.2.1 SQL的构成 406

16.2.2 select语句 407

16.2.3 delete语句 408

16.2.4 insert语句 408

16.2.5 update语句 408

16.3 ADO.NET概述 408

16.3.1 认识ADO.NET 408

16.3.2 ADO.NET的主要组件 409

16.3.3 System.Data命名空间 409

16.4 连接数据库 410

16.4.1 Connection对象 410

16.4.2 Command对象 412

16.4.3 DataReader对象 415

16.4.4 DataSet对象 417

16.4.5 DataAdapter对象 418

16.5 操作数据库 418

16.5.1 使用SqlCommand添加数据 418

16.5.2 使用SqlCommand修改数据 420

16.5.3 使用SqlCommand删除数据 421

16.5.4 使用SqlCommand查询数据 422

16.6 本章知识点综合应用 424

16.6.1 ObjectDataSource的数据绑定 424

16.6.2 SqlDataSource数据源控件的参数使用 428

16.6.3 SqlDataSource数据源控件的数据过滤 430

16.6.4 通过SqlDataSource数据源控件修改数据 432

16.7 小结 434

16.8 习题 434

第6篇 综合案例 437

第17章 抛砖引玉:在线投票系统 437

17.1 数据库设计 437

17.2 数据操作类的设计 437

17.3 创建页面 445

17.4 投票功能 447

17.5 投票统计 448

17.6 小结 451

第18章 内功心法:图书管理系统 453

18.1 普通用户模块设计 453

18.1.1 模块界面设计 453

18.1.2 数据库设计 454

18.1.3 添加相关事件代码 455

18.2 管理员模块设计 461

18.2.1 登录 461

18.2.2 公告栏 462

18.2.3 查看目录信息 463

18.2.4 读取用户留言 463

18.2.5 添加相关事件代码 465

18.3 系统启动界面设计 470

18.4 重点知识与代码 471

18.4.1 窗体间的数据通信 471

18.4.2 Panel覆盖 472

18.4.3.txt文件的操作 472

18.4.4 ADO.NET相关操作 472

18.4.5 本例完整代码 473

18.5 示例演示 484

18.6 小结 489