《面向对象程序设计教程(C#版)》

书籍简介:

本书全面细致地讲授面向对象的概念、方法和应用,突出面向对象程序设计的思想,并以C#为载体来实现面向对象的设计。本书按面向对象的设计方法来归类章节,分为15章,包括类和对象,封装,继承,多态,程序的调试和异常处理,接口和多态的实现,静态类和密封类,值类型和引用类型,索引器,泛型,集合,Windows窗体应用程序,文件操作,委托和事件,多线程编程。本书概念清晰,定义准确,例题实用,习题丰富,是一本真正简明易学的面向对象程序设计的教材。

本书可作为高等院校计算机专业及相关专业的C#面向对象程序设计课程的教材,同时也可作为各类面向对象的C#程序设计培训班的教学用书。

作者简介:

刘瑞新

出版日期:

2018年08月

章节目录:

目 录
前言
第1章 类和对象1
1.1 面向对象的概念1
1.1.1 对象抽象成类1
1.1.2 由类创建对象3
1.1.3 对象之间的通信4
1.1.4 面向对象开发的特点4
1.2 定义类、创建对象4
1.2.1 定义类4
1.2.2 类的成员4
1.2.3 成员变量8
1.3 创建对象9
1.3.1 对象的声明与实例化9
1.3.2 对象成员的访问10
1.3.3 类和对象应用示例10
1.4 命名空间12
1.4.1 命名空间概述12
1.4.2 命名空间的声明12
1.4.3 导入其他命名空间14
1.4.4 命名空间的嵌套14
1.5 习题15
第2章 封装16
2.1 封装的概念16
2.2 类的属性18
2.2.1 属性的声明18
2.2.2 属性的访问21
2.3 方法重载21
2.4 构造函数24
2.4.1 构造函数的概念24
2.4.2 构造函数的定义25
2.4.3 构造函数的分类26
2.4.4 调用构造函数26
2.4.5 构造函数的重载28
2.5 习题30
第3章 继承32
3.1 继承的概念32
3.2 派生类及其特性33
3.2.1 声明派生类33
3.2.2 继承的特性36
3.3 继承与访问修饰符38
3.4 继承与构造函数39
3.5 里氏替换原则44
3.5.1 里氏替换原则概述44
3.5.2 派生类对象能够替换基类对象44
3.5.3 类的引用45
3.5.4 隐藏基类中的成员47
3.6 习题47
第4章 多态49
4.1 多态的概念49
4.2 使用重写和虚方法实现多态50
4.2.1 重写的概念50
4.2.2 在派生类中使用new关键字实现覆盖性重写50
4.2.3 使用虚方法实现多态性重写52
4.3 使用抽象类和抽象方法实现多态56
4.3.1 抽象类的概念56
4.3.2 抽象类和抽象方法的定义57
4.3.3 重载抽象方法58
4.3.4 理解多态58
4.4 对象类型的转换与判断61
4.4.1 向上转换类型(隐式转换类型)61
4.4.2 向下转换类型(强制转换类型)63
4.4.3 使用as和is运算符66
4.5 习题68
第5章 程序的调试和异常处理70
5.1 程序的调试70
5.1.1 调试工具70
5.1.2 设置断点71
5.1.3 调试的过程72
5.2 错误与异常概述75
5.2.1 错误与异常的区别76
5.2.2 异常处理77
5.3 C#中的异常处理79
5.3.1 使用try…catch处理异常79
5.3.2 使用try…catch…finally处理异常82
5.3.3 异常处理的指导原则和特点87
5.3.4 使用throw抛出异常87
5.4 习题88
第6章 接口和多态的实现92
6.1 接口概述92
6.1.1 接口的概念92
6.1.2 接口的声明92
6.1.3 接口的实现95
6.1.4 接口成员的实现96
6.1.5 接口映射98
6.1.6 重新实现接口99
6.1.7 接口的本质100
6.2 多态的实现101
6.2.1 抽象类与普通类的对比101
6.2.2 抽象类与接口的对比101
6.2.3 抽象类和接口的使用场合102
6.2.4 使用抽象类和接口实现多态103
6.3 习题106
第7章 静态类和密封类108
7.1 静态成员108
7.1.1 静态成员概述108
7.1.2 静态字段108
7.1.3 静态方法111
7.1.4 静态成员总结112
7.1.5 静态方法与实例方法的区别112
7.2 String类的常用方法113
7.2.1 String类的常用静态方法113
7.2.2 String类的常用实例方法116
7.3 静态类118
7.3.1 静态类的定义118
7.3.2 访问静态类的成员119
7.3.3 静态构造函数120
7.4 密封类和密封方法122
7.4.1 密封类的定义122
7.4.2 密封方法123
7.5 习题124
第8章 值类型和引用类型126
8.1 值类型和引用类型简介126
8.1.1 栈空间和堆空间126
8.1.2 值类型和引用类型的定义127
8.2 方法的参数类型131
8.2.1 C#中方法的参数132
8.2.2 值参数132
8.2.3 引用参数133
8.2.4 输出参数134
8.2.5 数目可变参数135
8.2.6 可选参数136
8.2.7 命名参数137
8.2.8 方法解析138
8.3 值类型和引用类型的应用138
8.3.1 值类型参数按值方式传递138
8.3.2 值类型参数按引用方式传递139
8.3.3 引用类型参数按值方式传递139
8.3.4 引用类型参数按引用方式传递140
8.4 相等判断141
8.4.1 静态ReferenceEquals()方法141
8.4.2 = =运算符142
8.4.3 实例Equals()方法142
8.4.4 静态Equals()方法144
8.4.5 三种比较方法的异同144
8.5 字符串的存储原理145
8.6 常量、枚举和结构148
8.6.1 常量148
8.6.2 枚举类型151
8.6.3 结构类型153
8.7 装箱和拆箱155
8.8 习题156
第9章 索引器159
9.1 索引器的概念159
9.2 定义索引器159
9.3 索引器的使用161
9.4 使用其他非整数的索引类型162
9.5 索引器与属性的比较164
9.6 接口中的索引器165
9.7 习题168
第10章 泛型170
10.1 泛型的概念170
10.2 泛型类171
10.2.1 定义泛型类171
10.2.2 泛型类对象的创建172
10.2.3 泛型类的应用173
10.3 泛型类中数据类型的约束173
10.3.1 泛型类约束的概念173
10.3.2 使用where约束类型174
10.3.3 where约束的应用179
10.4 泛型类的静态成员181
10.5 泛型类的继承182
10.6 泛型方法185
10.6.1 泛型方法的声明185
10.6.2 调用泛型方法192
10.6.3 泛型方法的应用193
10.7 泛型参数的转换195
10.8 泛型接口196
10.9 习题197
第11章 集合199
11.1 集合的概念199
11.2 Ar

封面图:

发表评论

相关文章