C#开发宝典
书 号:9787113115951
丛 书 名:
作 者:匡松 张淮鑫
译 者:
开 本:16开
装 帧:平装
正文语种:
出 版 社:中国铁道出版社有限公司
定 价:79元
-
内容简介
历史选题 -
前言
前 言
C#程序设计语言,起源于C/C++语言,吸收了大量Java语言的精华,基于微软优秀的.NET平台,可以说是现代编程语言的集大成者,最值得研究和学习。
同时,大多数理工科学生在校都学习过一门编程语言,比如C语言或者C++语言,在此基础上,理解和学习C#的程序设计技术,就变得相当容易。随着信息技术深刻地应用到各个领域,从现在到未来很长一段时间,与C#技术相关的职位需求会变得越来越多,因此广大的理工科专业学子需要及时补充学习C#的开发技巧。这样,不但可以为将来的求职打好坚实的基础,也可以熟练地应用于自己未来的工作中。
C#/ASP.NET程序员招聘技能要求汇总
排除学历的基本要求,学习能力等软性要求之外,我们把上百家公司的ASP.NET和C#程序员招聘要求汇集在一起,并进行合并归类,综合得到下面的技术技能要求。
(1)语言方面,C#要求非常熟练。
(2)熟悉.NET框架,熟练掌握ASP.NET基本开发技能,有一定的项目开发技能和经历。
(3)数据库方面,既然是微软平台,应熟练掌握SQL Sever的设置、使用和开发。典型的招聘语句是:“熟练掌握SQL Server,熟练编写T-SQL语句,了解SQL性能优化。”另外,对于其他数据库,如Oracle和MySQL,也得有一定的了解。
上述三项,可以说是招聘的必然要求,我们需要勤学勤练达到熟练的程度,最好能带上自己的中小型项目前去演示。本书的内容安排也基本围绕这三项基本要求而来。
除了上述三项必知必会技能之外,在林林总总的招聘要求中,还有一些特殊的要求,如果你学习和掌握了,应该会使得你的面试更加顺利,因为你的技能储备比别人多,在竞争中可以脱颖而出。
(1)熟悉JavaScript脚本语言、熟练使用Ajax技术。Ajax技术的强大,每个Web开发程序员都需要学习它,使用它。
(2)精通XML,能基于DIV+CSS构建页面。因为如果你懂得更多,你的就业机会就会更多。
(3)熟练掌握.NET开发框架,熟悉.NET MVC/MVP编程架构;理解面向对象(OO)编程思想,熟悉常用的设计模式,熟悉UML。这个要求看起来比较空泛,实际上,如果你达到这些要求,你的编程水平将有很大的提升。
(4)熟悉Flash或Silverlight中至少一种开发技术,具备一般网页动画的开发能力。未来是RIA的开发世界,储备这方面的技能,绝对不吃亏。
(5)虽然大多数C#和ASP.NET软件工程师的招聘,都是进行Web开发,但也有个别岗位需要进行C/S开发,典型的招聘要求是“C#工程师:熟悉C#编程,熟悉C/C++优先;熟悉TCP/IP,熟悉C# Socket编程;熟悉WPF优先考虑。”一般来说,学习C#之前,我们已经学习过C/C++,而这些岗位要求,往往不过一本书的内容,买一本书有空看看,面试前突击一下,应该很容易就通过面试。招聘者也明白,这些东西,边用边学都来得及,不会特别难为你。
如何成长为专业C#/ASP.NET程序员
总结完这些技能要求,我们计算了一下,完全掌握三项基本技能,就是从零开始,肯下苦功,能静下心来学习和练习3个月到6个月,完全没有问题。读者可以先尝试,每天先花2小时看书,然后上机调试程序,可能不用一个月,你的C#就很熟练了。再在这个基础上继续前进,学习后面的技能即可。
本书根据上述职位分析结果,精心设计了一个专业C#/ASP.NET的学习流程,也就是本书的基本学习内容:
(1)C#语法基础,也就是基本数据类型,顺序、选择、循环等基本程序结构的语法,如果读者有一门程序设计语言的基础,可以轻松掌握,即使没有基础,阅读本书和不断上机实践书中案例,也可以轻松掌握。
(2)C#面向对象程序设计语法,从建立类和对象的基本概念讲起,到继承、接口等高级语法,一步一步让读者建立面向对象程序设计的基本概念,掌握精髓,熟悉C#所有的特色语法。
(3)C#的Windows程序设计,Windows开发之初,并没有提供一个完全面向对象的开发接口,采用C++开发Windows程序是一个非常复杂的过程,而.NET框架封装了Windows底层的细节,对应用程序提供了WinForm类库,因此用C#编写Windows程序,变得相当容易,基本只是类组件的拖放,读者可以通过本篇内容,不但学习Windows应用的开发,还可以熟悉巩固前面学到的C#语法。
(4)Web开发,未来是Web开发的时代,微软通过ASP.NET技术提供了一套Web开发工具,而采用C#语言的ASP.NET开发,是主流的开发方法之一。在本书5篇中,读者将学会这些基础技能,为后面的学习和技能的进一步提高打下基础。
(5)项目案例。一些相当于毕业设计的项目案例,总能提升读者的开发水平,而大多数程序员,通过这样的中小型案例,可以综合自己的系统分析、程序设计和调试能力,有经验的程序员,都是通过一个一个项目案例积累起来丰富的经验,从而总结出思考问题的方式。本书提供的项目案例,读者可以先完成其中一个,总结之后,举一反三,想想可以应用在哪些开发领域。然后了解其他开发项目的需求,想想若自己来实现将会如何做,然后再看看作者的实现,这样的学习效果更好。
在开发过程中,除了技术上掌握的硬实力之外,我们也要不断在学习过程中发展自己的软实力。所以,最后我们看看一般公司招聘中的特别要求——“素质要求”,你想想看,自己在这些软性技能方面做得如何,有没有提高的空间:
(1)思维能力:面对非常棘手的问题,能够恰当地运用已有的概念、方法、技术等多种手段,分析问题产生的原因,找出最有效的应对办法。
(2)团队合作:愿意帮助其他成员解决遇到的问题,无保留地将自己所掌握的知识与技能传授给其他成员;所以读者学习的时候,最好找几个同学一起学习,尝试训练团队开发能力。
本书学习说明
我们按照上述学习流程组织完成本书初稿,发现篇幅有些多,考虑到有些语法内容,比如顺序、选择、循环等语法结构,大多数程序设计语言都差不多,而学习C#的读者,大多数已经有了这方面的经验,就把这样的语法内容和一些不太常用的不是最重要的语法内容,作为电子书,放到了本书光盘之中,这样既保证整体图书知识的系统性,同时,减少了篇幅,降低了本书定价,将更多的实惠奉送给读者。
对于基本语法,大多数程序员的成功经验是,一定要自己上机输入程序,一一调试,学习效果才会更好。当然,对项目开发来说,本书只讲解了关键代码,全部的代码还需要读者细细钻研,甚至自己修改代码,改变功能,来调试代码,达到更好的学习效果。所以,本书提供了第23章~第27章的系统开发项目代码。
多媒体教学是一种新兴的教学形式,C#的学习者,将来大多会参加ASP.NET的开发工作,为了配合本书的内容,我们还在光盘中提供了由斯琴巴图老师讲解的、20多小时的ASP.NET开发教学视频。
编 者
2010年5月 -
目录
目 录
第1篇 C#语言简介与开发环境
第1章 C#简介
1.1 发展历程...... 2
1.1.1 起源...... 2
1.1.2 C# 2.0...... 2
1.1.3 C# 3.0...... 4
1.1.4 C# 3.5...... 4
1.1.5 未来展望...... 5
1.2 与其他语言的对比...... 6
1.2.1 C#与Java的对比...... 6
1.2.2 C#与C++的对比...... 7
1.3 技术优势...... 8
1.3.1 C#的主要功能...... 8
1.3.2 C#的主要特点...... 9
1.4 C#语言和.NET Framework的关系...... 10
1.5 本章小结...... 11
第2章 Visual Studio 2008 IDE简介
2.1 安装Visual Studio 2008...... 14
2.2 Visual Studio 2008概览...... 18
2.2.1 Visual Studio 2008常用功能窗口介绍...... 18
2.2.2 配置设置...... 23
2.2.3 类设计器...... 26
2.2.4 帮助系统...... 27
2.3 用Visual Studio 2008 IDE开发应用程序...... 30
2.3.1 控制台应用程序...... 30
2.3.2 Windows窗体应用程序...... 31
2.4 调试应用程序...... 33
2.4.1 程序错误类型...... 33
2.4.2 调试程序...... 34
2.5 本章小结...... 35
第2篇 C#语言程序设计基础
第3章 C#基础元素
3.1 基础语法...... 38
3.1.1 C#程序结构...... 38
3.1.2 C#程序入口...... 40
3.1.3 程序区块...... 41
3.1.4 C#程序的注释方法...... 41
3.1.5 命名空间......42
3.2 标识符...... 45
3.3 关键字...... 46
3.4 变量...... 46
3.4.1 变量的命名...... 47
3.4.2 数据类型 ......47
3.4.3 变量的声明...... 50
3.5 常量...... 51
3.6 操作符与表达式...... 53
3.6.1 操作符...... 53
3.6.2 算术表达式...... 54
3.6.3 赋值表达式...... 56
3.7 类型转换...... 57
3.8 本章小结...... 60
第4章 类与对象
4.1 面向对象编程技术...... 61
4.1.1 面向对象编程基础 ......61
4.1.2 类与对象的关系及特点...... 62
4.1.3 类与对象的形式...... 63
4.2 C#中类的定义和使用...... 63
4.3 类成员...... 65
4.4 构造函数和析构函数...... 69
4.4.1 构造函数...... 69
4.4.2 析构函数...... 71
4.4.3 this访问 ......72
4.5 引用类型和值类型 ......73
4.6 System.Object...... 76
4.6.1 装箱...... 76
4.6.2 拆箱...... 77
4.7 Visual Studio 2008中的OOP工具...... 77
4.7.1 添加类...... 77
4.7.2 类视图...... 78
4.7.3 对象浏览器...... 79
4.8 类库............ 79
4.9 本章小结...... 80
第5章 方法
5.1 方法的定义与调用...... 82
5.1.1 方法的定义...... 82
5.1.2 方法的调用...... 84
5.1.3 方法的返回类型...... 86
5.2 虚拟方......法...... 87
5.3 参数...... 88
5.4 方法重载...... 92
5.5 Lambda表达式...... 94
5.5.1 Lambda表达式的定义...... 94
5.5.2 Lambda语句...... 95
5.5.3 Lambda表达式中的变量范围...... 95
5.6 扩展方法...... 96
5.7 本章小结...... 98
第6章 异常处理
6.1 异常简介............ 100
6.2 异常助手...... 101
6.3 Exception类...... 103
6.4 异常处理方法...... 105
6.4.1 引发异常...... 105
6.4.2 捕捉异常...... 108
6.5 本章小结...... 111
第7章 枚举与结构
7.1 枚举...... 113
7.1.1 什么是枚举...... 113
7.1.2 枚举的定义...... 113
7.1.3 枚举的使用...... 116
7.2 结构...... 118
7.2.1 结构的声明...... 119
7.2.2 在结构中定义方法...... 120
7.2.3 结构的使用...... 123
7.2.4 类与结构的区别...... 124
7.3 本章小结...... 125
第3篇 C#语言关键技术
第8章 面向对象进阶
8.1 静态成员和实例成员...... 130
8.2 常数和字段...... 131
8.3 类继承...... 133
8.4 抽象类和密封类...... 138
8.5 接口...... 140
8.5.1 接口和类的区别...... 141
8.5.2 接口和类的选择使用...... 141
8.5.3 定义接口......142
8.5.4 接口成员...... 145
8.5.5 接口成员的全权名...... 148
8.6 接口的实现...... 148
8.6.1 接口实现举例...... 150
8.6.2 显式接口成员实现...... 156
8.6.3 接口映射...... 160
8.6.4 接口的重实现...... 165
8.6.5 接口实现的继承机制...... 168
8.7 接口的组合...... 170
8.8 接口的查询...... 171
8.8.1 使用is运算符实现查询...... 171
8.8.2 使用as运算符实现查询...... 172
8.9 本章小结...... 174
第9章 属性
9.1 属性的定义...... 176
9.2 属性的使用...... 177
9.3 静态属性和实例属性 ......184
9.4 Attribute类...... 186
9.4.1 Attribute类的定义...... 187
9.4.2 Attribute类的使用...... 188
9.4.3 Attribute类的查询...... 193
9.5 索引器...... 198
9.6 本章小结...... 202
第10章 迭代器与分部类
10.1 迭代器...... 204
10.2 分部类...... 207
10.3 本章小结...... 210
第11章 泛型
11.1 泛型简介...... 212
11.1.1 泛型问题简述...... 212
11.1.2 泛型概述...... 215
11.1.3 泛型的优点...... 219
11.1.4 泛型实例:让程序说多种语言...... 221
11.2 泛型的使用...... 222
11.2.1 泛型的限制...... 222
11.2.2 泛型接口...... 227
11.2.3 泛型方法...... 232
11.2.4 泛型方法重载...... 235
11.2.5 泛型类的继承...... 237
11.3 .NET中泛型的应用...... 238
11.3.1 .NET典型泛型类:List......239
11.3.2 泛型结构...... 242
11.4 本章小结 244
第12章 委托
12.1 C#中的委托...... 246
12.2 委托与接口...... 247
12.3 委托示例 ......248
12.3.1 委托声明............ 248
12.3.2 委托实例化...... 250
12.3.3 委托调用...... 253
12.4 多路委托...... 253
12.4.1 怎样组合多路广播委托...... 254
12.4.2 多路广播委托示例...... 254
12.5 本章小结 ......256
第13章 事件
13.1 事件简介...... 258
13.1.1 什么是事件...... 258
13.1.2 事件的特点...... 259
13.1.3 事件处理程序的一般步骤...... 259
13.1.4 如何声明事件............ 260
13.1.5 如何引发事件............ 260
13.1.6 如何订阅事件...... 261
13.1.7 是否所有委托都可以应用到事件中...... 262
13.1.8 发布符合.NET Framework准则的事件...... 262
13.2 事件示例...... 263
13.2.1 简单事件声明示例...... 263
13.2.2 事件封装示例...... 264
13.3 GUI事件...... 266
13.3.1 事件机制剖析之鼠标单击事件...... 266
13.3.2 事件机制剖析之KeyPress事件...... 269
13.3.3 常用事件之鼠标按下、释放和拖动事件...... 270
13.3.4 常用事件之键盘按下和释放事件...... 272
13.3.5 常用事件之焦点事件...... 273
13.4 本章小结 274
第4篇 Windows窗体程序设计
第14章 Windows窗体应用程序
14.1 控件 278
14.1.1 控件的通用属性 278
14.1.2 窗体 279
14.1.3 控件的创建 283
14.1.4 控件的事件 284
14.2 Button控件 284
14.3 Label和LinkLabel控件 286
14.4 TextBox控件 288
14.5 RichTextBox控件 290
14.6 RadioButton和CheckBox控件 292
14.7 ListBox和ComboBox控件 295
14.8 ListView控件 299
14.9 TreeView控件 304
14.10 自定义控件 310
14.10.1 自定义控件概述 310
14.10.2 创建用户控件 311
14.11 本章小结 314
第15章 菜单与工具栏设计
15.1 菜单栏 316
15.1.1 菜单控件的使用 317
15.1.2 右键菜单 318
15.1.3 弹出菜单的创建 318
15.2 工具栏的创建 320
15.3 状态栏控件的使用 321
15.4 常用控件 322
15.4.1 滚动条控件 322
15.4.2 滚动条控件的使用 322
15.4.3 进程条控件 323
15.4.4 进程条控件的使用 324
15.4.5 跟踪条控件 325
15.4.6 跟踪条控件的使用 325
15.4.7 计时器控件 326
15.4.8 模拟跑表计时器 326
15.5 本章小结 327
第16章 Windows窗体程序进阶
16.1 SDI和MDI应用程序 329
16.1.1 基于对话框的应用程序 329
16.1.2 SDI应用程序 329
16.1.3 MDI应用程序 331
16.2 使用对话框 335
16.2.1 打开文件对话框OpenFileDialog 335
16.2.2 保存文件对话框SaveFileDialog 337
16.2.3 打印对话框 338
16.2.4 字体设置对话框FontDialog 339
16.2.5 颜色设置对话框ColorDialog 339
16.2.6 对话框的模式 340
16.2.7 自定义对话框 341
16.3 GDI+简介 344
16.3.1 GDI+概述 344
16.3.2 Graphics类 345
16.3.3 画笔Pen类 346
16.3.4 字体Font类 347
16.3.5 位图Bitmap类 348
16.3.6 实例扩展 348
16.4 高级控件 349
16.4.1 MonthCalendar控件 349
16.4.2 DateTimePicker控件 349
16.4.3 TreeView控件 349
16.4.4 TabControl控件 351
16.5 Windows媒体播放器 353
16.5.1 Windows Media Player 353
16.5.2 为程序添加媒体播放功能 354
16.6 本章小结 355
第17章 文件操作
17.1 System.IO命名空间 357
17.2 Stream类 359
17.3 File和FileInfo类 360
17.4 StreamReader和StreamWriter类 363
17.5 BinaryReader和BinaryWriter类 367
17.6 Directory和DirectoryInfo类 372
17.7 Path类 376
17.8 异步文件操作 378
17.9 本章小结 383
第18章 数据访问技术
18.1 数据库基本知识 384
18.2 SQL简介 384
18.3 ADO.NET 385
18.3.1 ADO.NET简介 385
18.3.2 类介绍 385
18.3.3 ADO.NET中的XML 387
18.3.4 ADO.NET中的SQL 395
18.3.5 DataReader类简介 403
18.3.6 DataSet类简介 405
18.4 ADO.NET与各种数据库的连接 407
18.4.1 Access 407
18.4.2 SQL Server 409
18.4.3 MySQL 410
18.4.4 Oracle 412
18.4.5 其他数据库 414
18.5 本章小结 415
第19章 Windows窗体应用程序与数据库应用
19.1 窗体控件的数据绑定 416
19.1.1 定义数据源 417
19.1.2 使用DataSet 419
19.1.3 添加数据绑定控件 423
19.1.4 绑定数据 425
19.2 应用程序实例 427
19.3 本章小结 431
第20章 LINQ集成查询详解
20.1 LINQ实现字符串查询 433
20.1.1 用LINQ查询字符串中的数字 435
20.1.2 用LINQ统计单词出现的次数 437
20.2 LINQ访问ArrayList数组 440
20.2.1 使用LINQ访问简单字符串ArrayList数组 441
20.2.2 使用LINQ访问对象ArrayList数组 442
20.3 LINQ访问文件目录 443
20.4 LINQ to XML详解 447
20.4.1 什么是LINQ to XML 447
20.4.2 使用LINQ to XML创建XML树 450
20.4.3 使用LINQ to XML加载XML文件 453
20.4.4 用XmlReader创建树 454
20.4.5 检测不正确的XML文档 457
20.5 LINQ to SQL详解 458
20.5.1 什么是LINQ to SQL 458
20.5.2 使用LINQ to SQL连接数据库 459
20.5.3 使用LINQ to SQL直接执行SQL命令 466
20.6 本章小结 468
第5篇 Web开发
第21章 Web应用
21.1 HTML简介 472
21.1.1 HTML的由来 472
21.1.2 页面介绍 474
21.1.3 格式设置...... 475
21.1.4 文本标记...... 477
21.1.5 多媒体...... 478
21.1.6 表格...... 480
21.1.7 链接...... 482
21.1.8 框架...... 482
21.1.9 表单 ......485
21.2 ASP.NET简介...... 488
21.2.1 静态页面与动态页面...... 488
21.2.2 其他动态页面技术...... 488
21.3 第一个ASP.NET程序...... 488
21.4 常用控件介绍...... 489
21.4.1 Label控件...... 490
21.4.2 TextBox控件...... 491
21.4.3 Button控件...... 491
21.4.4 DropDownList控件...... 492
21.4.5 ListBox控件...... 494
21.4.6 CheckBox控件和CheckBoxList控件...... 494
21.4.7 RadioButton控件和RadioButtonList控件...... 496
21.4.8 Image控件 ...... 498
21.5 ASP.NET服务端支持(IIS)...... 499
21.6 本章小结...... 500
第22章 数据检验
22.1 检验简介...... 501
22.1.1 什么是检验...... 501
22.1.2 客户端检验和服务端检验...... 502
22.2 验证控件...... 502
22.2.1 必须字段验证...... 503
22.2.2 比较验证...... 507
22.2.3 范围验证...... 512
22.2.4 正则表达式验证...... 517
22.2.5 自定义验证...... 521
22.2.6 验证总结...... 526
22.3 本章小结 ......529
第6篇 项目实战
第23章 俄罗斯方块网络对战
23.1 游戏简介...... 532
23.1.1 游戏规则简介...... 532
23.1.2 名词术语...... 532
23.2 单元格的设计与实现...... 533
23.2.1 设计BrickUnit类...... 533
23.2.2 测试BrickUnit类...... 534
23.3 方块的设计与实现...... 535
23.3.1 方块和单元格坐标...... 535
23.3.2 设计Brick类...... 536
23.3.3 改变Brick类样式...... 538
23.3.4 方块的旋转...... 538
23.3.5 测试Brick类...... 539
23.4 游戏地图的设计...... 539
23.4.1 与游戏地图相关的类...... 539
23.4.2 游戏地图相关类的功能分析...... 540
23.4.3 单元格集合...... 540
23.5 游戏画面绘制...... 544
23.5.1 双缓冲技术...... 544
23.5.2 绘图操作...... 546
23.5.3 局部刷新...... 549
23.5.4 地图与方块的界面显示...... 549
23.6 游戏地图的实现...... 550
23.6.1 游戏地图框架...... 550
23.6.2 判断满行和消除行...... 552
23.6.3 粘贴活动方块...... 554
23.6.4 移动和旋转方块...... 554
23.6.5 落下活动方块...... 557
23.7 游戏面板...... 557
23.7.1 界面设计...... 557
23.7.2 FormPlay类的字段和属性 559
23.7.3 游戏速度计......算 559
23.7.4 添加音效...... 559
23.7.5 游戏设置窗体...... 561
23.7.6 测试游戏面板...... 564
23.8 本章小结 ......564
第24章 一个简单的浏览器
24.1 实例功能介绍...... 565
24.2 编程思想...... 567
24.3 关键技术...... 568
24.3.1 HTTP...... 569
24.3.2 HTTP通信举例...... 569
24.3.3 浏览器与HTTP...... 571
24.4 浏览器程序实现步骤...... 571
24.4.1 建立程序框架...... 571
24.4.2 建立程序界面...... 575
24.4.3 实现浏览器功能...... 580
24.5 浏览器扩展功能的实现...... 586
24.5.1 默认搜索选择...... 586
24.5.2 记录和删除用户浏览的网站地址...... 587
24.5.3 皮肤选择...... 589
24.6 本章小结...... 589
第25章 网络监控软件
25.1 编程思路...... 590
25.2 关键技术...... 592
25.2.1 套接字Socket...... 592
25.2.2 事件与委托...... 593
25.3 实现步骤 595......
25.3.1 建立程序框架...... 595
25.3.2 IP头格式定义...... 597
25.3.3 PacketArrivedEventArgs事件参数类和委托...... 598
25.3.4 SniffSocketException异常类的实现...... 600
25.3.5 SniffSocket类构造函数...... 600
25.3.6 创建和绑定连接...... 600
25.3.7 接收和处理IP包...... 601
25.3.8 MainForm主界面...... 604
25.3.9 主窗体载入过程...... 605
25.3.10 数据包中消息显示的实现...... 606
25.3.11 主窗体sniff功能的实现...... 607
25.3.12 独立的程序入口类...... 608
25.4 本章小结...... 608
第26章 远程分布式数据库查询系统
26.1 实例介绍...... 609
26.2 编程思路...... 610
26.3 关键技术...... 611
26.3.1 分布式数据库技术...... 611
26.3.2 使用ADO.NET访问数据库...... 612
26.4 远程分布式数据库查询程序实现步骤...... 614
26.4.1 建立数据库服务对象(DbServer)的DLL工程...... 614
26.4.2 创建数据库和系统表...... 615
26.4.3 DbServer类的初始化过程...... 615
26.4.4 DbServer的查询方法...... 616
26.4.5 根据DataSet创建临时表...... 618
26.4.6 远程创建临时表...... 619
26.4.7 合并数据表...... 620
26.4.8 建立客户端程序框架...... 621
26.4.9 建立客户端程序界面...... 622
26.4.10 实现查询功能 ......623
26.4.11 系统程序代码清单...... 625
26.5 本章小结...... 626
第27章 ASP.NET学生信息管理系统
27.1 需求分析...... 627
27.1.1 数据实体上下文...... 627
27.1.2 权限分析...... 628
27.2 界面设计...... 629
27.2.1 登录页面设计...... 629
27.2.2 学生管理界面...... 629
27.2.3 专业及班级管理界面...... 630
27.2.4 系统管理及字典管理界面...... 631
27.3 主页面及控件实现 ......631
27.3.1 主页面...... 631
27.3.2 菜单控件...... 632
27.4 学生管理实现...... 633
27.4.1 学籍变动及奖惩...... 633
27.4.2 新增学生...... 636
27.4.3 管理学生信息...... 637
27.4.4 查看学生信息...... 642
27.4.5 更新学生信息...... 643
27.5 组织管理实现...... 644
27.5.1 学院管理...... 644
27.5.2 专业管理...... 646
27.5.3 班级管理...... 647
27.6 系统管理实现...... 650
27.6.1 用户登录...... 650
27.6.2 用户更新...... 653
27.6.3 用户管理...... 653
27.7 字典管理实现...... 653
27.7.1 学籍变动类型管理...... 654
27.7.2 奖惩类型管理...... 654
27.8 本章小结...... 655
附录A 顺序、分支和循环结构(光盘中)
A.1 顺序结构...... 656
A.2 布尔逻辑...... 658
A.2.1 位运算符...... 658
A.2.2 关系运算...... 660
A.2.3 逻辑表达式...... 661
A.3 分支结构...... 662
A.3.1 if语句...... 662
A.3.2 三元运算符...... 668
A.3.3 switch语句...... 669
A.3.4 break语句...... 672
A.3.5 default语句...... 673
A.4 goto语句...... 676
A.5 while循环...... 678
A.5.1 while循环语句的语法格式...... 678
A.5.2 while循环语句的应用...... 678
A.6 do循环...... 682
A.6.1 do循环语句的语法格式...... 682
A.6.2 do循环语句的应用...... 682
A.7 for循环...... 685
A.7.1 for循环语句的语法格式...... 685
A.7.2 for循环语句的应用...... 685
A.8 循环的嵌套...... 692
A.9 循环的中断 ......695
A.9.1 break语句...... 695
A.9.2 continue语句...... 697
A.9.3 goto语句...... 698
A.10 本章小结...... 699
附录B 数组与集合(光盘中)
B.1 数组...... 702
B.1.1 什么是数组...... 702
B.1.2 数组的定义...... 702
B.1.3 数组的索引...... 707
B.1.4 数组的遍历...... 709
B.1.5 数组元素的清空...... 711
B.1.6 数组的查找...... 712
B.1.7 数组的排序...... 712
B.1.8 数组的使用...... 714
B.2 集合...... 716
B.2.1 什么是集合...... 716
B.2.2 为什么使用集合...... 716
B.3 ArrayList动态数组...... 717
B.3.1 ArrayList的构造...... 717
B.3.2 ArrayList元素的添加...... 718
B.3.3 ArrayList元素的删除...... 720
B.3.4 ArrayList元素的查找...... 721
B.3.5 ArrayList元素的遍历...... 722
B.3.6 ArrayList向Array的转换...... 723
B.3.7 缩减ArrayList的容量...... 725
B.4 Hashtable哈希表...... 727
B.4.1 Hashtable的构造...... 727
B.4.2 Hashtable元素的特点...... 728
B.4.3 Hashtable元素的操作...... 729
B.4.4 Hashtable的优点...... 732
B.5 Queue队列...... 732
B.5.1 Queue的概念...... 733
B.5.2 Queue的构造 ......733
B.5.3 Queue的相关属性...... 733
B.5.4 Queue的操作...... 734
B.5.5 Queue与其他集合的区别...... 735
B.6 Stack堆栈...... 736
B.6.1 什么是Stack...... 736
B.6.2 定义Stack...... 737
B.6.3 Stack元素的操作...... 737
B.6.4 Stack元素的获取规则...... 738
B.7 SortedList排序集合...... 740
B.7.1 SortedList的概念...... 740
B.7.2 SortedList元素的操作...... 740
B.7.3 何时使用SortedList...... 742
B.8 Dictionary字典...... 743
B.8.1 Dictionary类简介...... 743
B.8.2 更改Dictionary类中的条目 ......744
B.8.3 更改条目的值...... 745
B.8.4 查找条目 746......
B.8.5 遍历Dictionary...... 747
B.9 对象和集合初始化...... 748
B.9.1 什么是对象初始化器...... 748
B.9.2 什么是集合初始化器...... 749
B.10 匿名类型...... 750
B.10.1 创建匿名类型对象...... 750
B.10.2 匿名类型的特点...... 752
B.11 本章小结...... 752
附录C 运算符重载(光盘中)
C.1 运算符的可重载性...... 754
C.2 重载运算符的应用...... 755
C.3 本章小结...... 760
附录D 输入/输出(光盘中)
D.1 文件...... 762
D.1.1 System.IO类介绍 ......762
D.1.2 文件类File...... 764
D.1.3 文件夹类Directory...... 766
D.1.4 文件信息类FileInfo...... 767
D.1.5 文件夹信息类DirectoryInfo...... 769
D.1.6 文件信息类与文件夹信息类的用法...... 770
D.2 流...... 770
D.2.1 流操作类介绍...... 770
D.2.2 文件流类FileStream...... 771
D.2.3 流写入类StreamWriter...... 776
D.2.4 流读取类StreamReader...... 778
D.2.5 二进制流写入类BinaryWriter...... 780
D.2.6 二进制流读取类BinaryReader...... 781
D.3 高级实例...... 783
D.4 本章小结...... 787 -
作者介绍
-
编辑推荐
-
书评书荐
-
附件下载
图书推荐