《C#从入门到实践》PDF下载

  • 购买积分:14 如何计算积分?
  • 作  者:郑耀东等编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2009
  • ISBN:9787302197485
  • 页数:435 页
图书介绍:本书共分为27章,从第一个C#应用程序可是,首先介绍搭建、配置开发环境等基础知识,然后介绍C# 3.0的基础语法知识,再重点介绍C# 3.0中的面向对象编程技术和常用的扩展技术。

第1篇 C#概述篇 2

第1章 C#入门基础 2

1.1 C#概述 2

1.1.1 C#语言 2

1.1.2 .NET框架 3

1.1.3 C#应用程序 5

1.2 搭建Visual Studio 2008开发环境 6

1.2.1 安装Microsoft Visual Studio 2008 6

1.2.2 配置集成开发环境(IDE) 7

1.2.3 熟悉集成开发环境 9

1.3 创建第一个控制台应用程序 11

1.3.1 创建Sample_01_CA控制台应用程序 11

1.3.2 解决方案资源管理器 12

1.3.3 Program.cs文件 12

1.3.4 AssemblyInfo.cs文件 13

1.3.5 运行应用程序 13

1.4 创建第一个Windows窗体应用程序 14

1.4.1 创建Sample_01_WFA Windows窗体应用程序 14

1.4.2 解决方案资源管理器 15

1.4.3 Forml.cs窗体 15

1.4.4 Forml.Designer.cs文件 15

1.4.5 Forml.cs窗体的代码 16

1.4.6 Program.cs文件 16

1.4.7 AssemblyInfo.cs文件 16

1.4.8 运行应用程序 16

1.5 上机实践 16

1.6 常见问题及解答 17

1.7 小结 18

1.8 习题 18

第2章 C#基本概念 19

2.1 创建Hello World应用程序 19

2.1.1 创建hello.txt文本文件 19

2.1.2 创建HelloWorld类 19

2.1.3 添加Main()方法 20

2.1.4 调用WriteLine()方法 21

2.1.5 引入System命名空间 22

2.1.6 整理Hello World应用程序的代码 22

2.2 编译和运行Hello World应用程序 23

2.3 C#程序的概念扩展 24

2.4 上机实践 24

2.5 小结 25

2.6 习题 25

第2篇 C#基础语法篇 28

第3章 类型 28

3.1 类型概述 28

3.2 值类型 29

3.2.1 System.ValueType类型 29

3.2.2 整数类型 30

3.2.3 浮点型 31

3.2.4 decimal类型 32

3.2.5 bool类型 32

3.2.6 枚举类型 32

3.2.7 结构类型 33

3.2.8 实例1:把整数转换为二进制数 34

3.2.9 实例2:把二进制数转换为整数 35

3.3 引用类型 36

3.3.1 对象类型 36

3.3.2 字符串类型 36

3.3.3 类类型 37

3.3.4 数组类型 37

3.3.5 接口类型 37

3.3.6 委托类型 38

3.4 装箱和拆箱 38

3.4.1 装箱 38

3.4.2 拆箱 39

3.5 上机实践 39

3.6 常见问题及解答 40

3.7 小结 40

3.8 习题 41

第4章 变量 42

4.1 变量概述 42

4.2 变量分类 43

4.2.1 静态变量 43

4.2.2 实例变量 44

4.2.3 局部变量 45

4.2.4 值参数 46

4.2.5 引用参数 46

4.2.6 输出参数 47

4.2.7 数组元素 48

4.3 变量赋值 48

4.4 实例1:使用值参数传递数据 49

4.5 实例2:使用ref参数传递数据 50

4.6 实例3:使用out参数返回数据 51

4.7 变量转换 52

4.7.1 隐式转换 52

4.7.2 显式转换 53

4.8 上机实践 54

4.9 常见问题及解答 54

4.10 小结 55

4.11 习题 55

第5章 表达式和运算符 56

5.1 表达式 56

5.1.1 表达式分类 56

5.1.2 this关键字 57

5.1.3 base关键字 58

5.1.4 new关键字 58

5.2 运算符 60

5.2.1 运算符优先级 60

5.2.2 一元运算符 61

5.2.3 算术运算符 63

5.2.4 逻辑运算符 63

5.2.5 条件运算符 64

5.2.6 条件逻辑运算符 65

5.2.7 移位运算符 65

5.2.8 关系和类型测试运算符 66

5.2.9 赋值运算符 67

5.3 实例1:使用checked和unchecked运算符检查运算 67

5.4 实例2:复数运算符重载 68

5.5 上机实践 70

5.6 常见问题及解答 71

5.7 小结 71

5.8 习题 71

第6章 语句 72

6.1 语句概述 72

6.2 基本语句 73

6.2.1 空语句 73

6.2.2 标记语句 73

6.2.3 表达式语句 74

6.2.4 声明语句 74

6.2.5 块 75

6.3 跳转语句 75

6.3.1 break语句 75

6.3.2 continue语句 76

6.3.3 return语句 76

6.3.4 throw语句 77

6.4 选择语句 78

6.4.1 if语句 78

6.4.2 switch语句 79

6.5 迭代语句 81

6.5.1 for语句 81

6.5.2 foreach语句 82

6.5.3 while语句 83

6.5.4 do语句 84

6.6 其他语句 85

6.6.1 try语句 85

6.6.2 using语句 86

6.6.3 lock语句 87

6.6.4 checked和unchecked语句 88

6.7 实例:判断闰年 88

6.8 上机实践 89

6.9 常见问题及解答 90

6.10 小结 90

6.11 习题 90

第7章 命名空间 92

7.1 命名空间概述 92

7.2 声明命名空间 92

7.3 .(点号)运算符 94

7.4 ::(双冒号)运算符 95

7.5 using指令 95

7.5.1 创建命名空间或类型别名 95

7.5.2 导入命名空间 96

7.6 .NET Framework常用命名空间 96

7.7 上机实践 97

7.8 常见问题及解答 98

7.9 小结 98

7.10 习题 99

第3篇 C#面向对象编程篇 102

第8章 类 102

8.1 类概述 102

8.1.1 类声明 102

8.1.2 类修饰符 102

8.1.3 类继承 103

8.1.4 类、对象和实例化 104

8.2 类成员 104

8.2.1 常量 105

8.2.2 字段 106

8.2.3 方法 107

8.2.4 属性 111

8.2.5 索引器 112

8.2.6 构造函数 114

8.2.7 析构函数 117

8.2.8 事件 117

8.3 实例:使用类的继承特性 118

8.3.1 设计Person类 119

8.3.2 设计Teacher类 121

8.3.3 设计Student类 122

8.3.4 测试Person、Teacher和Student类 123

8.4 上机实践 124

8.5 常见问题及解答 125

8.6 小结 125

8.7 习题 125

第9章 结构 127

9.1 结构概述 127

9.2 结构成员 128

9.3 结构和类的区别 128

9.3.1 继承 129

9.3.2 this保留字 129

9.3.3 构造函数 130

9.4 实例1:创建坐标点结构Point 130

9.4.1 设计Point结构 130

9.4.2 测试Point结构 131

9.5 实例2:创建复数结构Complex 132

9.5.1 设计Complex结构 132

9.5.2 测试Complex结构 133

9.6 上机实践 134

9.7 常见问题及解答 135

9.8 小结 135

9.9 习题 135

第10章 数组 136

10.1 数组概述 136

10.1.1 数组的维度数 136

10.1.2 声明数组 137

10.1.3 实例化数组 137

10.1.4 初始化数组 137

10.1.5 遍历数组 138

10.2 数组分类 139

10.2.1 一维数组 139

10.2.2 二维数组 140

10.2.3 多维数组 140

10.2.4 交错数组 141

10.3 静态数组System.Array 142

10.3.1 属性 142

10.3.2 方法 143

10.3.3 获取数组长度 144

10.3.4 获取元素的值 145

10.3.5 设置元素的值 145

10.3.6 获取元素的索引 145

10.3.7 排序数组 145

10.3.8 反转数组 146

10.4 动态数组System.ArrayList 146

10.4.1 属性 147

10.4.2 方法 147

10.4.3 添加元素 148

10.4.4 移除元素 148

10.5 实例:抽签程序 149

10.6 上机实践 150

10.7 常见问题及解答 150

10.8 小结 151

10.9 习题 151

第11章 接口 152

11.1 接口概述 152

11.1.1 接口声明 152

11.1.2 接口修饰符 152

11.1.3 接口继承 153

11.2 接口成员 153

11.2.1 属性 154

11.2.2 索引器 154

11.2.3 方法 154

11.2.4 事件 155

11.3 实现接口 155

11.3.1 实现属性 156

11.3.2 实现索引器 156

11.3.3 实现方法 157

11.3.4 实现事件 157

11.4 抽象类和接口 157

11.5 实例:设计算术计算接口 158

11.6 上机实践 160

11.7 常见问题及解答 161

11.8 小结 162

11.9 习题 162

第12章 委托和事件 163

12.1 委托 163

12.1.1 委托声明 163

12.1.2 创建向委托注册方法 164

12.1.3 委托实例化 165

12.1.4 委托的方法列表 165

12.1.5 委托调用 166

12.2 事件 167

12.2.1 声明事件 167

12.2.2 注册事件 168

12.2.3 移除事件 168

12.2.4 调用事件 168

12.3 实例:测试打印事件 168

12.4 上机实践 170

12.5 常见问题及解答 171

12.6 小结 172

12.7 习题 172

第13章 异常处理 173

13.1 异常概述 173

13.1.1 导致异常的原因 173

13.1.2 try语句 173

13.1.3 异常处理 175

13.2 System.Exception类 175

13.3 常用异常类 176

13.4 实例:自定义异常处理类 177

13.4.1 设计CustomException类 177

13.4.2 使用CustomException类处理异常 178

13.5 上机实践 179

13.6 常见问题及解答 180

13.7 小结 181

13.8 习题 181

第4篇 C#语法扩展篇 184

第14章 泛型 184

14.1 泛型概述 184

14.1.1 泛型类声明 184

14.1.2 类型形参 185

14.1.3 类型形参的约束 185

14.1.4 泛型类的成员 186

14.1.5 泛型类的静态字段 187

14.2 泛型方法 187

14.2.1 声明泛型方法 188

14.2.2 调用泛型方法 188

14.2.3 通过委托调用泛型方法 189

14.2.4 虚泛型方法 189

14.3 实例1:实现泛型列表 190

14.3.1 设计泛型列表类GenericList<T> 190

14.3.2 测试泛型列表 192

14.4 实例2:实现泛型堆栈 192

14.4.1 设计泛型堆栈类GenericStack<T> 193

14.4.2 测试泛型堆栈 194

14.5 上机实践 195

14.6 常见问题及解答 195

14.7 小结 196

14.8 习题 196

第15章 分部类型和可空类型 197

15.1 分部类型 197

15.1.1 声明分部类 197

15.1.2 声明分部结构 198

15.1.3 声明分部接口 198

15.1.4 同名成员处理 199

15.1.5 处理基接口 200

15.2 可空类型 200

15.2.1 HasValue和Value属性 201

15.2.2 GetValueOrDefault()方法 202

15.2.3 bool?类型 202

15.3 实例:测试可空类型 203

15.4 上机实践 204

15.5 常见问题及解答 205

15.6 小结 205

15.7 习题 205

第16章 隐型变量、初始化器、匿名类型和隐型数组 206

16.1 隐型局部变量 206

16.1.1 声明隐型局部变量 206

16.1.2 使用隐型局部变量 207

16.2 对象初始化器 209

16.3 集合初始化器 210

16.4 匿名类型 211

16.5 隐型数组 212

16.6 实例:在foreach语句中使用隐型局部变量 213

16.7 上机实践 214

16.8 常见问题及解答 215

16.9 小结 215

16.10 习题 215

第17章 迭代器、匿名方法和扩展方法 216

17.1 迭代器 216

17.1.1 创建非泛型迭代器 216

17.1.2 创建泛型迭代器 217

17.1.3 IEnumerator和IEnumerator〈T〉接口 218

17.2 匿名方法 219

17.2.1 创建匿名方法 219

17.2.2 将匿名方法作为参数传递 220

17.3 扩展方法 221

17.3.1 声明扩展方法 221

17.3.2 导入扩展方法 222

17.3.3 调用扩展方法 222

17.4 实例:扩展string类型的方法 223

17.5 上机实践 223

17.6 常见问题及解答 224

17.7 小结 224

17.8 习题 225

第18章 Lambda表达式和查询表达式 226

18.1 Lambda表达式 226

18.1.1 输入参数 227

18.1.2 表达式或语句块 227

18.2 查询表达式 228

18.2.1 from子句 228

18.2.2 select子句 230

18.2.3 where子句 231

18.2.4 let子句 232

18.2.5 orderby子句 232

18.2.6 group子句 233

18.2.7 into子句 234

18.2.8 join子句 234

18.3 实例:使用Lambda表达式查询XML 237

18.4 上机实践 238

18.5 常见问题及解答 239

18.6 小结 240

18.7 习题 240

第5篇 应用篇 242

第19章 字符串处理 242

19.1 String和StringBuilder类 242

19.1.1 String类 242

19.1.2 StringBuilder类 243

19.2 不变字符串处理 244

19.2.1 插入字符串 244

19.2.2 移除字符串 245

19.2.3 替换字符串 245

19.2.4 联接字符串 246

19.2.5 分隔字符串 247

19.2.6 填充字符串 247

19.2.7 查找字符串 248

19.2.8 获取子串 248

19.2.9 格式化字符串 249

19.3 可变字符串处理 250

19.3.1 插入字符串 251

19.3.2 追加字符串 251

19.3.3 移除字符串 251

19.3.4 替换字符串 252

19.3.5 复制字符串 252

19.4 实例:词频统计 253

19.5 上机实践 257

19.6 常见问题及解答 257

19.7 小结 257

19.8 习题 258

第20章 日期和时间处理 259

20.1 DateTime结构 259

20.1.1 字段 259

20.1.2 属性 260

20.1.3 方法 261

20.2 TimeSpan结构 263

20.2.1 字段 263

20.2.2 属性 263

20.2.3 方法 264

20.3 日期和时间的常用操作 265

20.3.1 格式化 265

20.3.2 计算时间差 266

20.3.3 追加时间 267

20.4 实例:计算for循环的运算时间 267

20.5 上机实践 268

20.6 常见问题及解答 269

20.7 小结 269

20.8 习题 269

第21章 I/O流、目录和文件处理 270

21.1 I/O流 270

21.1.1 文件流 271

21.1.2 内存流 272

21.2 目录处理 274

21.2.1 Directory类 274

21.2.2 DirectoryInfo类 275

21.2.3 创建目录 276

21.2.4 删除目录 277

21.2.5 移动目录 277

21.2.6 遍历目录 278

21.3 文件处理 278

21.3.1 File类 278

21.3.2 FileInfo类 279

21.3.3 创建文件 280

21.3.4 写入文件 280

21.3.5 读取文件 281

21.3.6 移动文件 281

21.3.7 删除文件 282

21.4 实例:读取目录下指定类型的文件的内容 282

21.5 上机实践 285

21.6 常见问题及解答 285

21.7 小结 286

21.8 习题 286

第22章 Windows窗体编程 287

22.1 Windows窗体应用程序概述 287

22.1.1 创建Sample_22 Windows窗体应用程序 287

22.1.2 应用程序起始点 288

22.1.3 配置程序集信息 289

22.2 基本控件 290

22.2.1 标签控件 290

22.2.2 图片框控件 290

22.2.3 文本框和富文本框 291

22.2.4 按钮控件 291

22.2.5 单项按钮和复选框 292

22.3 MainForm.cs窗体设计 292

22.3.1 配置窗体属性 292

22.3.2 添加控件 292

22.3.3 创建等待对话框 293

22.3.4 添加窗体事件 294

22.4 菜单和工具栏 295

22.4.1 菜单 295

22.4.2 工具栏 296

22.4.3 上下文菜单 297

22.5 容器 298

22.5.1 面板 298

22.5.2 组合框 299

22.5.3 TabControl控件 299

22.5.4 容器窗体 300

22.6 对话框 302

22.6.1 对话框窗体 302

22.6.2 颜色对话框 303

22.6.3 字体对话框 304

22.6.4 打开文件对话框 305

22.6.5 保存文件对话框 306

22.6.6 目录浏览对话框 307

22.7 数据网格视图控件 308

22.8 运行应用程序 309

22.9 上机实践 310

22.10 常见问题及解答 310

22.11 小结 311

22.12 习题 311

第23章 使用GDI+绘图 312

23.1 GDI+概述 312

23.1.1 Graphics类 312

23.1.2 点和区域 315

23.1.3 颜色 317

23.1.4 刷 318

23.1.5 画笔 318

23.1.6 字体 319

23.2 实例:使用GDI+绘制线条、形状和文本 320

23.2.1 创建Sample_23窗体应用程序 320

23.2.2 Paint事件 321

23.2.3 绘制直线 321

23.2.4 绘制折线 322

23.2.5 绘制曲线 323

23.2.6 绘制虚线 324

23.2.7 绘制矩形 326

23.2.8 绘制三角形 327

23.2.9 绘制多边形 327

23.2.10 绘制椭圆 328

23.2.11 绘制饼状图 329

23.2.12 绘制文本 331

23.3 上机实践 332

23.4 常见问题及解答 333

23.5 小结 333

23.6 习题 333

第24章 .NET数据访问 335

24.1 ADO.NET概述 335

24.1.1 ADO.NET组成结构 335

24.1.2 ADO.NET基本对象 336

24.2 实例:操作SQL Server数据库 341

24.2.1 创建Sample_24窗体应用程序 341

24.2.2 创建CSharp3DB数据库 342

24.2.3 连接数据库 343

24.2.4 读取数据 344

24.2.5 插入数据 345

24.2.6 修改数据 347

24.2.7 删除数据 348

24.2.8 使用DataGridView控件显示数据 349

24.2.9 使用ListView控件显示数据 350

24.2.10 使用TreeView控件显示数据 352

24.3 上机实践 353

24.4 常见问题及解答 354

24.5 小结 354

24.6 习题 354

第6篇 实践篇 356

第25章 图书管理系统 356

25.1 系统总体设计 356

25.1.1 系统功能设计 356

25.1.2 图书管理系统组成 357

25.1.3 数据库设计 358

25.1.4 数据库实体类设计 360

25.1.5 应用程序主入口 360

25.1.6 应用程序全局变量 361

25.2 管理员模块实现 361

25.2.1 管理员登录 361

25.2.2 主窗口 363

25.2.3 分类管理 370

25.2.4 书籍管理 376

25.2.5 借阅书籍 380

25.2.6 查看借阅人 385

25.3 学生和老师功能模块实现 387

25.3.1 学生或老师登录 387

25.3.2 主窗口 387

25.3.3 归还书籍 391

25.3.4 查看书籍信息 393

25.3.5 浏览书籍 395

25.3.6 借阅书籍 399

25.4 上机实践 399

25.5 常见问题及解答 399

25.6 小结 400

25.7 习题 400

第26章 P2P聊天工具 401

26.1 系统总体设计 401

26.1.1 系统功能设计 401

26.1.2 P2P聊天工具组成 401

26.2 P2P聊天工具类库实现 402

26.2.1 Tool类 402

26.2.2 P2P类 403

26.3 P2P聊天工具服务器聊天窗口 406

26.4 P2P聊天工具客户端聊天窗口 409

26.5 上机实践 409

26.6 小结 409

26.7 习题 409

第27章 我的校内网 410

27.1 系统总体设计 410

27.1.1 系统功能设计 410

27.1.2 校内网组成 410

27.1.3 数据库设计 411

27.1.4 数据库实体类设计 413

27.1.5 标题模块 413

27.1.6 配置文件Web.config 414

27.2 常用功能模块实现 414

27.2.1 登录页面 415

27.2.2 主页面 416

27.2.3 我的好友 417

27.2.4 添加好友 420

27.2.5 我的相册 423

27.2.6 上传照片 426

27.2.7 我的日志 429

27.2.8 添加日志 432

27.3 常见问题及解答 434

27.4 小结 434

27.5 习题 435