轻松学C#-图解版

出版社:电子工业出版社
出版日期:2013-6
ISBN:9787121202230
作者:谷涛,扶晓,毕国锋
页数:424页

章节摘录

版权页:   插图:    一个类从另一个类派生出来,派生类从基类那里继承特性。派生类也可以作为其他类的基类,但是C#中规定,派生类只能从一个类中继承,如图7.2所示。 从上述程序可以看出,后来定义的man类就省了好多麻烦,因为不需要重复定义年龄和体重等字段,这就达到了继承的初衷:代码重用。 7.1.2初识继承 谈到继承就肯定会涉及基类和派生类。我们首先需要了解派生类的声明格式、类中可继承的成员,最后还会给大家小结一下继承的规则。 1.派生类的声明 派生类的声明格式及举例如图7.3所示。 如同继承最大的好处是代码重用一样,派生类声明后即可继承基类的特性,同时还可以根据需要定义自己的特性。 【示例7.2】以下代码演示的是派生类的声明方式。 【示例14—1】创建一个名为Coun的命名空间,它把一个实现简单倒计时计数器功能的CounDow类限制在该命名空间中。 (1)新建项目。 (2)右击“解决方案资源管理器”面板空白处,在弹出的快捷菜单中选择“添加”|“类”命令,弹出“添加新项,名称空间的声明示例”对话框,如图14.2所示。

书籍目录

第一篇  C#概述篇
第1章 C#入门
2
1.1 C#概述
2
1.1.1 C#的发展
2
1.1.2 C#开发的基础
2
1.2 搭建开发环境
3
1.2.1 Visual Studio 2012软硬件配置要求
3
1.2.2 下载Visual Studio 2012
3
1.2.3 安装Visual Studio 2012
4
1.2.4 初始化配置
7
1.3 第一个程序——Hello World
8
1.4 小结
11
1.5 习题
12
第二篇 面向对象基础篇
第2章 类和对象
16
2.1 分析Hello World程序
16
2.2 语法规范
17
2.2.1 标识符
17
2.2.2 关键字
18
2.2.3 注释
19
2.3 定义类
20
2.4 实例化对象
20
2.5 小结
20
2.6 习题
21
第3章 定义类——字段
23
3.1 数据类型
23
3.1.1 简单值类型
23
3.1.2 值的表示——字面量
26
3.1.3 转义序列
27
3.2 定义字段
27
3.2.1 定义字段
28
3.2.2 静态字段和实例字段的访问
28
3.2.3 字段初始化
29
3.2.4 字段的动态赋值——Read()和ReadLine()
31
3.2.5 字段输出
31
3.2.6 格式化输出
32
3.2.7 数据类型转换
39
3.2.8 只读字段
41
3.2.9 访问控制
41
3.3 运算符
43
3.3.1 算术运算符
43
3.3.2 自增、自减运算符
44
3.3.3 复合赋值运算符
45
3.3.4 位运算符
46
3.3.5 sizeof运算符
47
3.3.6 运算符的优先级
47
3.4 小结
49
3.5 习题
49
第4章 定义类——方法
51
4.1 方法的概述
51
4.1.1 定义方法
51
4.1.2 方法的调用
52
4.2 方法体的构成
53
4.2.1 局部变量
53
4.2.2 局部变量与字段同名的解决——this关键字
54
4.2.3 语句
55
4.2.4 全局变量
55
4.3 返回值
56
4.3.1 返回值类型
56
4.3.2 从方法返回
57
4.4 参数
58
4.4.1 参数的分类
58
4.4.2 引用参数(ref参数)
59
4.4.3 输出参数(out参数)
61
4.5 特殊的方法
62
4.5.1 Main()方法
62
4.5.2 构造函数
62
4.5.3 带参数的构造函数
63
4.5.4 析构函数
64
4.6 小结
65
4.7 习题
65
第5章 流程控制
69
5.1 选择执行——条件
70
5.1.1 条件真假——布尔类型的转化
70
5.1.2 关系运算
71
5.1.3 逻辑运算
71
5.2 选择语句
73
5.2.1 问号运算符
73
5.2.2 if语句
74
5.2.3 if…else语句
75
5.2.4 if…else…if语句
76
5.2.5 switch语句
77
5.3 循环语句
80
5.3.1 while语句
80
5.3.2 do…while语句
81
5.3.3 for语句
82
5.3.4 foreach语句
85
5.4 跳转语句
85
5.4.1 break语句
85
5.4.2 continue语句
86
5.4.3 goto语句
86
5.5 小结
87
5.6 习题
87
第6章 数组
91
6.1 初识数组
91
6.2 基本数组
92
6.2.1 声明数组
92
6.2.2 数组的初始化
92
6.2.3 数组引用
93
6.2.4 数组的赋值
94
6.2.5 遍历数组
95
6.3 特殊数组
96
6.3.1 多维数组
96
6.3.2 交错数组
100
6.4 对数组的使用
101
6.4.1 数组作为方法参数
102
6.4.2 类中的数组
105
6.5 对数组的操作
106
6.5.1 清空数组
106
6.5.2 创建数组副本
107
6.5.3 复制一部分元素给另一数组
107
6.5.4 将当前一维数组的所有元素赋值到指定的一维数组中
108
6.5.5 获取某个元素的值
109
6.5.6 获取元素的索引值
109
6.5.7 获取某元素最后匹配项的索引
110
6.5.8 反转一维数组中的元素顺序
110
6.5.9 为数组中的某个元素重新赋值
111
6.5.10 对数组元素进行重新排序
112
6.6 小结
112
6.7 习题
113
第7章 继承
115
7.1 C#的继承机制
115
7.1.1 概述
115
7.1.2 初识继承
116
7.2 访问修饰符
118
7.3 成员继承
121
7.3.1 使用继承字段
121
7.3.2 使用方法
121
7.3.3 派生类直接访问基类成员——base
122
7.3.4 继承中的构造函数
123
7.4 多态
124
7.5 抽象
128
7.5.1 抽象类、抽象方法的声明
129
7.5.2 抽象类的使用
129
7.5.3 抽象方法的使用
130
7.6 密封
132
7.6.1 密封类
132
7.6.2 密封方法
133
7.7 小结
134
7.8 习题
135
第8章 属性
139
8.1 属性初识
139
8.1.1 属性声明
139
8.1.2 属性访问
140
8.1.3 访问器
141
8.1.4 属性分类
145
8.2 属性使用
146
8.2.1 属性继承
146
8.2.2 对访问器使用访问修饰符
148
8.2.3 自动实现属性
149
8.2.4 对属性使用对象初始化器
150
8.3 索引器
151
8.3.1 索引器的声明
151
8.3.2 一维索引器的使用
152
8.3.3 重载索引器
153
8.3.4 比较属性和索引器
153
8.3.5 比较索引器和数组
154
8.4 小结
154
8.5 习题
154
第9章 运算符重载
158
9.1 什么是运算符重载
158
9.2 如何进行运算符重载
158
9.2.1 一元运算符重载
159
9.2.2 二元运算符重载
162
9.3 关系运算符重载
163
9.4 重载true和false
165
9.5 逻辑运算符重载
167
9.5.1 逻辑运算符重载的简单方式
167
9.5.2 使用短路运算符
169
9.6 转换运算符
171
9.7 注意问题
173
9.7.1 重载后运算符的优先级
173
9.7.2 不能重载的运算符
174
9.8 小结
175
9.9 习题
175
第10章 接口
178
10.1 接口的概念
178
10.1.1 接口组成
178
10.1.2 接口声明
178
10.1.3 接口的实现
179
10.2 接口方法的使用
182
10.3 接口属性
183
10.4 接口索引器
185
10.5 接口继承
187
10.5.1 多重继承
187
10.5.2 接口继承引起的名称隐藏
189
10.6 显式实现接口
190
10.7 小结
194
10.8 习题
194
第三篇 应用技术篇
第11章 异常处理
200
11.1 异常处理的基础
200
11.1.1 什么是异常
200
11.1.2 未捕获异常的后果
200
11.1.3 常用异常
201
11.1.4 异常处理
201
11.1.5 使用try和catch关键字
201
11.2 处理异常
204
11.2.1 使用异常处理错误
204
11.2.2 使用多条catch语句
205
11.2.3 嵌套try块
206
11.2.4 抛出异常
207
11.2.5 重新抛出异常
208
11.2.6 finally语句
210
11.3 自定义异常类
212
11.4 checked和unchecked关键字
214
11.4.1 checked
214
11.4.2 unchecked
214
11.5 小结
217
11.6 习题
217
第12章 文件和流
221
12.1 System.IO类
221
12.2 文件类File
222
12.2.1 文件的创建和打开
222
12.2.2 判断文件是否存在
224
12.2.3 复制文件
225
12.2.4 删除文件
226
12.2.5 文件的加密和解密
227
12.2.6 文件读取
228
12.3 文件夹类Directory
229
12.3.1 创建文件夹
229
12.3.2 删除文件夹
230
12.3.3 获取文件夹
231
12.4 文件信息类FileInfo
232
12.5 文件夹信息类DirectoryInfo
233
12.6 流
234
12.7 文件流类FileStream
235
12.7.1 FileStream文件流类的创建
235
12.7.2 获取和设置文件流属性信息
236
12.8 流写入类StreamWriter
237
12.9 流读取类StreamReader
238
12.9.1 创建StreamReader
239
12.9.2 读取字符或字符块到指定的变量
240
12.10 二进制流写入类BinaryWriter
241
12.11 二进制流读取类BinaryReader
242
12.12 小结
244
12.13 习题
244
第13章 委托、事件和 Lambda表达式
247
13.1 委托
247
13.1.1 声明委托
247
13.1.2 创建委托
247
13.1.3 多播委托
249
13.1.4 逆变和协变
251
13.2 事件
253
13.2.1 声明事件
253
13.2.2 订阅事件
254
13.2.3 取消订阅事件
255
13.2.4 引发事件
255
13.2.5 使用事件
255
13.3 匿名函数
257
13.3.1 匿名方法
257
13.3.2 给匿名方法传递参数
258
13.3.3 从匿名方法中返回值
259
13.4 Lambda表达式
260
13.4.1 Lambda运算符和Lambda表达式
261
13.4.2 Lambda表达式的形式
263
13.4.3 语句Lambda
263
13.5 小结
265
13.6 习题
265
第14章 命名空间、预处理器和程序集
269
14.1 命名空间
269
14.1.1 命名空间的声明
269
14.1.2 命名空间的作用
272
14.1.3 using指令
273
14.1.4 using指令的另一种形式
275
14.1.5 命名空间的合成
277
14.1.6 嵌套命名空间
278
14.1.7 全局命名空间
280
14.1.8 使用命名空间别名限定符(::)
280
14.2 预处理器
281
14.2.1 #define
281
14.2.2 #if和#endif
282
14.2.3 #else和#elif
284
14.2.4 #undef
287
14.2.5 #error
287
14.2.6 #warning
288
14.2.7 #line
289
14.2.8 #region和#endregion
289
14.2.9 #pragma
290
14.3 程序集
291
14.4 小结
292
14.5 习题
293
第15章 运行时类型标识、反射和特性
297
15.1 运行时类型标识
297
15.1.1 is运算符测试类型
297
15.1.2 as运算符
299
15.1.3 typeof运算符
300
15.2 反射
301
15.2.1 System.Type
301
15.2.2 使用反射获取方法的相关信息
302
15.2.3 使用反射调用方法
306
15.2.4 使用反射获取Type对象的构造函数
308
15.2.5 使用反射从程序集获得类型
308
15.3 特性
311
15.3.1 创建特性
311
15.3.2 连接特性
313
15.3.3 获取对象的特性
313
15.3.4 3个内置特性
316
15.4 小结
319
15.5 习题
319
第16章 泛型
327
16.1 泛型简介
327
16.2 类型约束
328
16.2.1 基类约束
329
16.2.2 接口约束
330
16.2.3 new()构造函数约束
331
16.2.4 引用类型约束和值类型约束
332
16.2.5 使用约束建立两个类型形参之间的关系
334
16.2.6 使用多个约束
335
16.3 泛型结构
336
16.4 泛型方法
337
16.5 泛型委托
338
16.6 泛型接口
339
16.7 泛型类的层次结构
341
16.8 使用泛型的限制
343
16.9 小结
343
16.10 习题
343
第17章 LINQ
349
17.1 LINQ的基础知识
349
17.1.1 简单查询
349
17.1.2 多次执行查询
351
17.2 查询表达式中使用的上下文关键
352
17.2.1 使用where子句筛选值
352
17.2.2 使用orderby子句排序结果
354
17.2.3 select子句
358
17.2.4 使用嵌套的from子句
364
17.2.5 使用group子句分组结果
365
17.2.6 使用into子句创建延续
366
17.2.7 在查询中使用let子句创建变量
367
17.2.8 使用join子句连接两个序列
368
17.3 匿名类型
370
17.4 创建组连接
372
17.5 查询方法
374
17.5.1 使用查询方法创建查询
374
17.5.2 查询语法与查询方法的对比
376
17.6 延期执行查询和立即执行查询
376
17.7 表达式树
376
17.8 扩展方法
378
17.9 小结
379
17.10 习题
379
第18章 数据库开发
385
18.1 常用数据库
385
18.1.1 Oracle数据库
385
18.1.2 Access数据库
385
18.1.3 SQL Server数据库
386
18.2 .NET下的数据库连接方式
386
18.2.1 通过连接字符串连接Access数据库
386
18.2.2 通过连接字符串连接SQL Server数据库
387
18.2.3 通过控件连接数据库
389
18.3 SQL语句
391
18.3.1 select语句
391
18.3.2 where语句
393
18.3.3 order by语句
395
18.3.4 insert into语句
397
18.3.5 delete语句
399
18.3.6 update语句
401
18.4 小结
403
18.5 习题
403

编辑推荐

《轻松学C#(图解版)》由浅入深,全面、系统地介绍了C#程序设计。除了详细地讲解C#知识点外,《轻松学C#(图解版)》还提供了大量的实例,供读者实战演练。

作者简介

本书由浅入深,全面、系统地介绍了C#程序设计。除了详细地讲解C#知识点外,本书还提供了大量的实例,供读者实战演练。
本书共分三篇。第一篇是C#概述篇,主要介绍的是Visual Studio 2012的开发环境及搭建。第二篇是面向对象基础篇,主要介绍类、对象、字段、方法、流程控制、数组、继承、属性、运算符重载、接口等C#基本内容。第三篇是应用技术篇,主要介绍的是异常处理、文件和流、委托、事件、Lambda表达式、命名空间、预处理器、程序集、运行时类型标识、反射、特性、泛型、LINQ和数据库开发等。
本书涉及面广,从基本操作到高级技术和核心原理,几乎涉及C#开发的所有重要知识。本书适合所有想全面学习C#开发技术的人员阅读,也适合使用C#进行开发的工程技术人员使用。对于经常使用C#做开发的人员,本书更是一本不可多得的案头必备参考书。


 轻松学C#-图解版下载 更多精彩书评



发布书评

 
 


精彩书评 (总计1条)

  •     本书适合作为软件开发入门者的自学用书,也适合作为高等院校相关专业的教学参考书,也可供开发人员查阅、参考。讲解的很详细,很容易理解,让人很好的掌握C#,实例简洁易懂,真题测试等资源齐全,内容很丰富,很不错的一本书,特别是有视频,可以在学习累的时候看一看。另外书本的内容和排版也很对我的胃口,已经有点入门的感觉了!

精彩短评 (总计2条)

  •     看起来很轻松,适合我这种刚开始学编程的,看到200多页了,代码都测试通过,感谢作者
  •     第一,这本书里视频里讲解,照本宣科,讲师,英语差的很,简单的26个英文字母都没有读标准,更别说,有的单词不会读。第二,本中有一面代码竟然活生生的没有了,还有一面,代码竟然字体变成莫明其妙的字体,看都没办法看,无语。强烈建议出书的人好好审核下。
 

外国儿童文学,篆刻,百科,生物科学,科普,初中通用,育儿亲子,美容护肤PDF图书下载,。 零度图书网 

零度图书网 @ 2024