目 录 1
第1章计算机、因特网、万维网和C# 1
1.1概述 1
1.2什么是计算机 1
1.3计算机结构 2
1.4操作系统的演化 2
1.5单机计算、分布式计算和客户机/服务器计算 3
1.6机器语言、汇编语言和高级语言 3
1.7 C,C++,Visual Basic.NET和Java 4
1.8 C# 5
1.9其他高级语言 6
1.10结构化编程 6
1.11重要的软件趋势:对象技术 6
1.12硬件趋势 7
1.13因特网和万维网的历史 8
1.14万维网联盟(W3C) 9
1.15可扩展标记语言(XML) 9
1.16.NET介绍 10
1.17.NET框架和公共语言运行库 11
1.18本书导读 12
小结 17
自测题 17
自测题答案 18
练习题 18
2.1概述 19
2.2 Visual Studio.NET集成开发环境简述 19
第2章Visual Studio.NET集成开发环境 19
2.3菜单栏和工具栏 21
2.4 Visual Studio.NET窗口 22
2.5使用【帮助】 25
2.6简单的程序:显示文本和图像 26
小结 33
自测题 35
自测题答案 35
练习题 35
3.2简单的程序:打印一行文本 37
第3章C#编程介绍 37
3.1概述 37
3.3另一个简单的程序:整数求和 45
3.4内存的概念 48
3.5算术运算 49
3.6判断:相等和关系运算符 51
小结 55
自测题 57
自测题答案 57
练习题 58
第4章控制结构(一) 61
4.1概述 61
4.2算法 61
4.3伪代码 61
4.4控制结构 62
4.5 if选择结构 63
4.6 if/else选择结构 64
4.7 while循环结构 67
4.8算法描述:案例研究一(计数控制循环) 68
4.9算法描述:案例研究二(标记控制循环) 70
4.10算法描述:案例研究三(嵌套控制结构) 75
4.11赋值运算符 78
4.12递增和递减运算符 79
4.13 Windows应用程序介绍 81
小结 86
自测题 88
自测题答案 89
练习题 90
第5章控制结构(二) 93
5.1概述 93
5.2计数控制循环的实质 93
5.3 for循环结构 94
5.4 for结构应用举例 97
5.5 switch多选结构 101
5.6 do/while循环结构 104
5.7 break和continue语句 106
5.8逻辑和条件运算符 108
5.9结构化编程总结 112
小结 116
自测题 117
自测题答案 118
练习题 119
第6章方法 120
6.1概述 120
6.2C#中的程序模块 120
6.3 Math类方法 121
6.4方法 122
6.5方法的定义 123
6.6参数提升(转换) 130
6.7 C#命名空间 132
6.8数值类型和引用类型 132
6.9传输参数:值传递与引用传递 133
6.10生成随机数 136
6.11例子:机率游戏 142
6.12变量的持续周期 145
6.13变量的作用范围规则 146
6.14递归 148
6.15使用递归的实例 151
6.16递归与迭代的比较 153
6.17方法重载 153
小结 155
自测题 157
自测题答案 159
练习题 161
第7章数组 164
7.1概述 164
7.2数组 164
7.3声明和分配数组 166
7.4数组应用举例 166
7.5向方法传递数组 174
7.6通过值和引用传递数组 176
7.7数组的排序 180
7.8查找数组:线性查找法和折半查找法 182
7.9多维数组 186
7.10 foreach循环结构 192
小结 192
自测题 193
自测题答案 194
练习题 194
第8章基于对象的编程 198
8.1 概述 198
8.2用类实现一个Time抽象数据类型 199
8.3类的作用域 204
8.4类成员的访问控制 204
8.5初始化类对象:构造函数 205
8.6使用重载构造函数 206
8.7属性 209
8.8合成:对象引用作为其他类的实例变量 216
8.9使用this引用 219
8.10垃圾回收 220
8.11静态类成员 221
8.12常量和只读成员 224
8.13索引器 226
8.14数据抽象和信息隐藏 231
8.15软件重用 232
8.16命名空间和程序集 233
8.1 7【类视图】和【对象浏览器】 237
小结 239
自测题 240
练习题 241
自测题答案 241
第9章面向对象编程:继承 243
9.1概述 243
9.2基类和派生类 244
9.3受保护成员和内部成员 245
9.4基类和派生类的关系 246
9.5案例研究:三级继承层次结构 261
9.6派生类中的构造函数和析构函数 264
小结 269
9.7与继承相关的软件工程 269
自测题 270
自测题答案 271
练习题 271
第10章面向对象编程:多态性 272
10.1 概述 272
10.2派生类对象转换为基类对象 272
10.3类型字段和switch语句 277
10.4多态性示例 277
10.5抽象类和方法 278
10.6示例(一):接口和实现的继承 279
10.7密封的类和方法 286
10.8示例(二):使用多态性的工资发放系统 286
10.9示例(三):创建和使用接口 294
10.10委托 304
10.11运算符重载 307
小结 312
自测题 312
练习题 313
自测题答案 313
第11章异常处理 314
11.1概述 314
11.2异常处理概述 314
11.3 示例:DivideByZeroException 316
11.4.NET的异常层次结构 320
11.5 finally块 321
11.6 Exception属性 326
11.7程序员自定义的异常类 330
11.8用checked和unchecked运算符处理溢出 333
小结 335
自测题 337
自测题答案 338
练习题 338
第12章图形用户界面概念(一) 339
12.1概述 339
12.2 Windows窗体 340
12.3事件处理模型 342
12.4控件属性和布局 346
12.5标签、文本框和按钮 349
12.6分组框和面板 354
12.7复选框和单选钮 356
12.8图片框 363
12.9鼠标事件处理 365
12.10键盘事件处理 367
小结 369
自测题 370
自测题答案 371
练习题 371
第13章图形用户界面概念(二) 373
13.1概述 373
13.2菜单 373
13.3 LinkLabel控件 380
13.4列表框和复选列表框 383
13.5组合框 389
13.6 TreeView控件 393
13.7 ListView控件 397
13.8选项卡控件 403
13.9多文档界面(MDI)窗口 408
13.10可视化继承 415
13.11用户自定义控件 418
小结 422
自测题 424
自测题答案 424
练习题 425
第14章多线程 426
14.1概述 426
14.2线程状态:线程的生命周期 427
14.3线程的优先级和线程调度 428
14.4线程同步和类监视器 432
14.5没有线程同步的生产者/消费者关系 433
14.6有线程同步的生产者/消费者关系 438
14.7生产者/消费者关系:循环缓冲区 444
小结 453
自测题 454
自测题答案 455
练习题 455
第15章字符、字符串和正则表达式 457
15.1概述 457
15.2字符和字符串基础 457
15.3 String类构造函数 458
15.4 String类的索引器、Length属性和CopyTo方法 459
15.5字符串比较 460
15.6 String类的GetHashCode方法 463
15.7字符串定位查找 464
15.8 String类的子串提取 467
15.9字符串相加 468
15.10 String类中的其他方法 468
15.11 StringBuilder类 470
15.12 StringBuilder索引器、Length和Capacity属性以及EnsureCapacity方法 471
15.13 StringBuilder类的Append和AppendFormat方法 473
15.14 StringBuilder类的Insert,Remove和Replace方法 475
15.15 Char方法 478
15.16模拟扑克洗牌和发牌程序 480
15.17正则表达式和Regex类 484
小结 492
自测题 494
自测题答案 495
练习题 495
16.1 概述 496
第16章图形和多媒体 496
16.2图形上下文和图形对象 497
16.3颜色处理 498
16.4字体处理 504
16.5绘制线段、矩形和椭圆 508
16.6绘制弧线 511
16.7绘制多边形和折线 513
16.8高级图形功能 516
16.10载入、显示和缩放图像 521
16.9多媒体概述 521
16.11连续图像动画 523
16.12 Windows媒体播放器 534
16.13 Microsoft Agent 536
小结 548
自测题 549
自测题答案 549
练习题 549
17.2数据层次结构 551
第17章文件和流 551
17.1概述 551
17.3文件和流 553
17.4 File和Directory类 553
17.5创建顺序访问文件 561
17.6从顺序访问文件中读取数据 571
17.7随机访问文件 580
17.8创建随机访问文件 583
17.9在随机访问文件中随机写入数据 586
17.10从随机访问文件中顺序读取数据 590
17.11 案例研究:交易处理程序 594
小结 611
自测题 612
自测题答案 613
练习题 613
第18章数据库、SQL和ADO.NET 615
18.1 概述 615
18.2关系数据库模型 615
18.3关系数据库概述:Books数据库 616
18.4结构化查询语言(SQL) 620
18.5 ADO.NET对象模型 631
18.6 使用ADO.NET编程:从DBMS中提取信息 631
18.7 使用ADO.NET编程:修改DBMS 639
18.8读写XML文件 645
小结 647
自测题 649
自测题答案 650
练习题 650