- ISBN:9787302619864
- 装帧:一般胶版纸
- 册数:暂无
- 重量:暂无
- 开本:其他
- 页数:412
- 出版时间:2023-01-01
- 条形码:9787302619864 ; 978-7-302-61986-4
本书特色
本书紧紧围绕“理论知识+开发案例”的模式进行编写,在*后一章中以一个完整的项目为主线,将面向对象的编程思想应用于实际项目开发中。全书每章均包含大量的案例,将理论知识与实例紧密结合,达到了学以致用的目的。 组织逻辑严密,案例丰富,教辅资料齐全,大量精选习题,实际综合项目达到做中学,学中做的目的
内容简介
本书作为面向对象程序设计的教程,系统、全面地介绍了有关C#程序开发所涉及的知识。全书共分2大部分,共21章,内容包括C#和Visual C#开发环境,C#语法基础,面向对象程序设计概述,委托和事件,程序调试与异常处理,集合、索引器、泛型,LINQ技术,WPF开发,ADO.NET编程,文件操作,网络编程,多线程编程和一个综合实例等。全书每章均包含大量的案例,将理论知识与实例紧密结合,达到了学以致用的目的。 本书紧紧围绕“理论知识+开发案例”的模式进行编写,在*后一章中以一个完整的项目为主线,将面向对象的编程思想应用于实际项目开发中。本书注重基础,内容丰富,相关案例和项目代码十分完整,适合作为应用型本科及职业院校计算机、软件工程等专业的教材,也可供C#初学者参考阅读。
目录
入门篇
第1章.NET基础3
1.1.NET3
1.2.NET Framework3
1.3.NET Core4
1.4使用.NET Framework或.NET Core编写应用程序5
1.4.1CIL和JIT5
1.4.2程序集6
1.5C#语言介绍6
1.5.1C#语言的发展历史6
1.5.2C#语言的特点6
1.5.3C#语言的应用领域7
1.6小结8
1.7练习8
第2章C#初识9
2.1编写**个C#程序9
2.2C#程序结构概述10
2.2.1命名空间11
2.2.2类11
2.2.3Main()方法12
2.2.4C#语句和注释12
2.2.5关键字与标识符13
2.3小结14
2.4练习14
编程基础篇
第3章变量、常量及运算符17
3.1变量是什么17
3.2变量的声明及初始化17
3.2.1声明变量17
3.2.2变量的初始化18
3.3数据类型19
3.3.1值类型19
3.3.2引用类型27
3.4变量的作用域28
3.4.1成员变量28
3.4.2局部变量28
3.5数据类型转换29
3.5.1隐式类型转换29
3.5.2显式类型转换30
3.6常量31
3.6.1const常量31
3.6.2readonly常量32
3.6.3静态常量和动态常量的对比32
3.7运算符33
3.7.1算术运算符33
3.7.2自增自减运算符34
3.7.3赋值运算符35
3.7.4关系运算符36
3.7.5逻辑运算符37
3.7.6位运算符39
3.7.7条件运算符42
3.8运算符优先级与结合性43
3.9案例1:整钱兑零44
3.10小结45
3.11练习45
第4章流程控制语句47
4.1流程控制概述47
4.2顺序结构48
4.3选择结构48
4.3.1if语句48
4.3.2分支语句的嵌套51
4.3.3switch语句52
4.3.4案例2:彩票54
4.4循环结构55
4.4.1while循环56
4.4.2do…while循环56
4.4.3for循环57
4.4.4for循环的变体讨论58
4.4.5循环的嵌套60
4.4.6案例3:减法表达式自动生成器60
4.5跳转语句61
4.5.1break语句61
4.5.2continue语句62
4.5.3break与continue的区别62
4.6案例4:显示素数63
4.7小结64
4.8练习64
第5章数组与字符串67
5.1数组概述67
5.2一维数组68
5.2.1一维数组初始化69
5.2.2一维数组的使用70
5.2.3案例5:生成一副扑克牌70
5.3二维数组71
5.3.1二维数组的创建71
5.3.2二维数组的初始化71
5.3.3二维数组的使用72
5.3.4案例6:数独游戏判定72
5.4不规则数组(交错数组)73
5.5C#中的Array类及数组的遍历操作75
5.5.1Array类75
5.5.2数组的遍历操作76
5.6字符串76
5.6.1字符串的声明77
5.6.2字符串的初始化77
5.6.3字符串的常用操作78
5.7StringBuilder类87
5.7.1设置StringBuilder对象的容量88
5.7.2修改StringBuilder字符串88
5.8String和StringBuilder的区别89
5.9小结90
5.10练习90
第6章函数93
6.1函数概述93
6.2定义和使用函数93
6.3返回值95
6.4参数96
6.4.1值参数97
6.4.2ref参数97
6.4.3out参数97
6.4.4params参数97
6.4.5可选参数98
6.4.6命名参数98
6.5函数重载和递归98
6.5.1函数重载98
6.5.2函数的递归98
6.6常用函数101
6.6.1数学函数101
6.6.2日期时间函数101
6.7案例7:生成随机验证码104
6.8小结105
6.9练习105
面向对象基础篇
第7章面向对象思想编程基础109
7.1面向对象思想概述109
7.2对象和类概述110
7.2.1对象110
7.2.2类110
7.2.3类与对象的关系110
7.2.4字段、属性和方法111
7.2.5对象的生命周期111
7.3定义类112
7.4定义类成员112
7.4.1静态成员113
7.4.2实例成员113
7.4.3类成员的访问权限113
7.4.4定义字段114
7.4.5定义方法114
7.4.6定义属性115
7.4.7定义索引器117
7.5对象的创建、使用及销毁118
7.5.1构造函数119
7.5.2析构函数121
7.5.3对象的创建和初始化122
7.5.4访问对象的属性和方法124
7.5.5对象的销毁124
7.6this关键字124
7.7案例8:以面向对象的思想生成扑克牌125
7.8小结129
7.9练习129
第8章继承、多态、委托与事件131
8.1继承131
8.1.1继承的实现132
8.1.2继承中的对象构造与析构132
8.1.3System.Object类133
8.1.4装箱与拆箱134
8.1.5派生类访问基类成员135
8.2密封方法和密封类137
8.3多态137
8.3.1方法重写138
8.3.2抽象方法和抽象类139
8.3.3接口140
8.3.4案例9:模拟银行存取系统案例141
8.3.5接口的显式实现144
8.3.6ICloneable接口、浅拷贝和深拷贝144
8.3.7实现类、抽象类与接口的继承问题146
8.4委托147
8.4.1委托的定义147
8.4.2委托的实例化148
8.4.3引用匿名方法的委托148
8.4.4多播委托149
8.4.5委托中的协变与逆变150
8.4.6.NET Framework中预定义的委托150
8.5事件152
8.6小结154
8.7练习154
第9章异常155
9.1异常概述155
9.2try…catch…finally155
9.3异常处理的流程156
9.4C#中的异常类156
9.5自定义异常类157
9.6小结157
9.7练习157
面向对象进阶篇
第10章泛型161
10.1概述161
10.2泛型的概念162
10.3泛型类162
10.3.1泛型类的声明与使用162
10.3.2可空类型163
10.3.3Null合并运算符164
10.3.4Null检查运算符165
10.4*泛型方法165
10.5*泛型接口166
10.6*泛型委托167
10.7*泛型约束167
10.8*泛型与继承168
10.9案例10:泛型矩阵169
10.10小结174
10.11练习174
第11章集合175
11.1集合概述175
11.2常见的集合类型177
11.2.1非泛型集合ArrayList177
11.2.2自定义强类型集合179
11.2.3泛型集合List179
11.2.4泛型集合HashSet181
11.2.5键值对集合哈希表182
11.2.6泛型键值对集合Dictionary184
11.2.7案例11:单词出现次数统计184
11.3*迭代器186
11.4*比较188
11.4.1值比较188
11.4.2运算符重载189
11.4.3类型比较190
11.4.4IComparable和IComparer接口192
11.5类型转换193
11.5.1重载转换运算符193
11.5.2as运算符194
11.6小结194
11.7练习195
第12章*高级C#技术196
12.1类型推理196
12.2动态查找197
12.3Tuple和ValueTuple198
12.3.1Tuple198
12.3.2ValueTuple200
12.4扩展方法202
12.5仅限init的资源库203
12.6记录类型record204
12.7小结205
12.8练习205
数据操作篇
第13章LINQ技术209
13.1LINQ概述209
13.2匿名类型210
13.3查询表达式语法和查询方法语法211
13.3.1查询表达式语法211
13.3.2查询方法语法217
13.4延迟执行230
13.5案例12:商品信息分页展示231
13.6小结235
13.7练习235
第14章文件、流和序列化237
14.1文件237
14.1.1文件概述237
14.1.2System.IO命名空间237
14.2路径238
14.2.1Path类238
14.2.2绝对路径和相对路径239
14.2.3System.Environment类239
14.3DriveInfo类240
14.4文件和目录相关类241
14.4.1File类和Directory类241
14.4.2FileInfo类和DirectoryInfo类247
14.5流及流的操作248
14.5.1Stream基类248
14.5.2流的读取器与写入器250
14.5.3FileStream255
14.5.4MemoryStream259
14.5.5BufferedStream260
14.6*序列化与反序列化261
14.6.1序列化与反序列化概述261
14.6.23种序列化技术及序列化规则262
14.7案例13:网络爬虫264
14.8小结266
14.9练习266
第15章数据访问技术267
15.1数据库概述267
15.2结构化查询语言267
15.3ADO.NET概述268
15.4Connection对象270
15.4.1Connection对象概述270
15.4.2连接字符串271
15.5Command对象272
15.5.1创建Command对象273
15.5.2执行数据库操作273
15.6DataReader对象276
15.6.1DataReader对象概述276
15.6.2使用DataReader对象读取查询结果277
15.7ADO.NET的数据访问模型278
15.7.1连接模式278
15.7.2断开连接模式278
15.7.3DataSet对象279
15.7.4DataAdapter对象280
15.8事务处理283
15.9案例14:商品销售统计284
15.10小结289
15.11练习289
表现层技术篇
第16章桌面编程WPF技术293
16.1WPF程序开发入门293
16.1.1WPF概述293
16.1.2XAML基础294
16.1.3依赖属性和附加属性299
16.1.4XAML中的事件300
16.1.5WPF程序的生命周期301
16.2布局和控件304
16.2.1控件模型304
16.2.2布局控件307
16.2.3通用界面控件312
16.2.4综合示例——基本控件的用法317
16.2.5用户控件319
16.3资源和样式321
16.3.1画刷321
16.3.2图形323
16.3.3资源326
16.3.4样式329
16.3.5动画331
16.3.6三维图形331
16.4数据绑定332
16.4.1认识数据绑定332
16.4.2创建数据绑定334
16.4.3数据转换336
16.4.4利用DataContext来作为共享数据源337
16.4.5数据模板——DataTemplate337
16.5命令338
16.5.1命令模型338
16.5.2自定义命令340
16.6案例15:天气预报341
16.7小结344
16.8练习345
综合案例篇
第17章综合案例——超市收银系统349
17.1需求分析349
17.2总体设计349
17.2.1系统目标349
17.2.2构建开发环境349
17.2.3系统功能结构350
17.2.4主要业务流程图350
17.3数据库设计352
17.3.1概念结构设计352
17.3.2数据库表结构353
17.4项目开发架构356
17.4.1三层架构356
17.4.2MVVM框架357
17.5类设计358
17.5.1业务实体类设计358
17.5.2数据访问层类设计360
17.5.3业务逻辑层类设计363
17.5.4表示层View类设计363
17.5.5表示层ViewModel类设计364
17.6系统主要模块开发与实现365
17.6.1登录模块365
17.6.2导航模块368
17.6.3收银模块369
17.6.4货品管理模块377
17.6.5销售统计模块380
17.6.6打折管理模块384
17.6.7人员管理模块388
17.7小结391
参考文献392
作者简介
夏磊,博士,副教授,毕业于四川大学计算机学院,主要研究人工智能方向。自2008年以来一直从事微软技术方向课程的教学工作,积累了十余年的一线教学经验与素材。在各大期刊和杂志发表数篇论文,也参编过数篇教材,学生反响较好。
-
有限与无限的游戏:一个哲学家眼中的竞技世界
¥37.4¥68.0 -
硅谷之火-人与计算机的未来
¥14.3¥39.8 -
全图解零基础word excel ppt 应用教程
¥12.0¥48.0 -
机器学习
¥59.4¥108.0 -
深度学习的数学
¥43.5¥69.0 -
智能硬件项目教程:基于ARDUINO(第2版)
¥31.9¥65.0 -
元启发式算法与背包问题研究
¥38.2¥49.0 -
AI虚拟数字人:商业模式+形象创建+视频直播+案例应用
¥62.9¥89.8 -
UNIX环境高级编程(第3版)
¥164.9¥229.0 -
剪映AI
¥52.8¥88.0 -
深度学习高手笔记 卷2:经典应用
¥90.9¥129.8 -
纹样之美:中国传统经典纹样速查手册
¥77.4¥109.0 -
UG NX 12.0数控编程
¥24.8¥45.0 -
MATLAB计算机视觉与深度学习实战(第2版)
¥90.9¥128.0 -
界面交互设计理论研究
¥30.8¥56.0 -
UN NX 12.0多轴数控编程案例教程
¥25.8¥38.0 -
微机组装与系统维护技术教程(第二版)
¥37.8¥43.0 -
Go 语言运维开发 : Kubernetes 项目实战
¥48.2¥79.0 -
明解C语言:实践篇
¥62.9¥89.8 -
Linux服务器架设实战(Linux典藏大系)
¥84.5¥119.0