C++程序设计 丁亚涛 第8章 类与对象

C++程序设计 丁亚涛 第8章 类与对象

ID:40238199

大小:853.50 KB

页数:84页

时间:2019-07-28

C++程序设计 丁亚涛 第8章 类与对象_第1页
C++程序设计 丁亚涛 第8章 类与对象_第2页
C++程序设计 丁亚涛 第8章 类与对象_第3页
C++程序设计 丁亚涛 第8章 类与对象_第4页
C++程序设计 丁亚涛 第8章 类与对象_第5页
资源描述:

《C++程序设计 丁亚涛 第8章 类与对象》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、8类和对象面向对象的基本概念、类与对象的声明与定 义、成员函数对象的访问与存储、构造函数与析构函数对象与指针、this指针友元函数与友元类、string类类的继承、多态性和虚函数抽象类、运算符重载、静态数据成员类模板本章导读8.1.1传统开发方法存在问题1.软件重用性差重用性是指同一事物不经修改或稍加修改就可多次重复使用的性质。2.软件可维护性差实践证明,用传统方法开发出来的软件,维护时其费用和成本仍然很高,其原因是可修改性差,维护困难,导致可维护性差。3.开发出的软件不能满足用户需要8.1面向对象的基本概念面向对象的程序设

2、计方法是对传统开发方法的继承和发展,它吸取了面向过程等传统方法的优点,同时又考虑到采用最符合人类认识问题的思维过程的模仿和实现。1.对象对象是人们要进行研究的任何事物,从最简单的整数到复杂的飞机等均可看作对象,它不仅能表示具体的事物,还能表示抽象的规则、计划或事件。2.对象的状态和行为3.类具有相同或相似性质的对象的抽象就是类。因此,对象的抽象是类,类的具体化就是对象,也可以说类的实例是对象。类具有属性,它是对象的状态的抽象,用数据结构来描述类的属性。类具有操作,它是对象的行为的抽象,用操作名和实现该操作的方法来描述。4.类

3、的结构在客观世界中有若干类,这些类之间有一定的结构关系。通常有两种主要的结构关系,即一般--具体结构关系,整体--部分结构关系。5.消息和方法对象之间进行通信的结构叫做消息。类中操作的实现过程叫做方法,一个方法有方法名、参数、方法体。8.1.2面向对象的基本概念设有对象:王晓丽(王晓丽,女,20岁,身高1.60,汉族)买买提(买买提,男,21岁,身高1.70,维吾尔族)设有类:学生(姓名,性别,年龄,身高,民族)举个例子类“学生”是对象王晓丽、买买提的抽象对象王晓丽、买买提是“学生”类的两个实例。1.对象唯一性。每个对象都有

4、自身唯一的标识,通过这种标识,可找到相应的对象。2.分类性。分类性是指将具有一致的数据结构(属性)和行为(操作)的对象抽象成类。3.继承性。继承性是子类自动共享父类数据结构和方法的机制,这是类之间的一种关系。继承性是面向对象程序设计语言不同于其它语言的最重要的特点,是其他语言所没有的。4.多态性(多形性)多态性使指相同的操作或函数、过程可作用于多种类型的对象上并获得不同的结果。8.1.3面向对象的基本特征1.抽象抽象是指强调实体的本质、内在的属性。类实现了对象的数据(即状态)和行为的抽象。2.封装性(信息隐藏)封装性是保证软

5、件部件具有优良的模块性的基础。面向对象的类是封装良好的模块,类定义将其说明(用户可见的外部接口)与实现(用户不可见的内部实现)显式地分开,其内部实现按其具体定义的作用域提供保护。3.共享性面向对象技术在不同级别上促进了共享同一类中的共享。在同一应用中共享在不同应用中共享8.1.4面向对象的要素8.2.1类的声明类的定义包括数据和操作数据的一组函数。数据部分又包括数据成员(Member)或者属性(Attribute),类的函数部分称为成员函数(MemberFunction),有时也称为方法.类定义的关键字是:class。定义类

6、的一般格式如下:class<类名>{public:<公有的数据成员定义和成员函数>;private:<私有的数据成员定义和成员函数>;protected:<保护的数据成员定义和成员函数>;};8.2类与对象的声明与定义classWhoAreYou{public:getName(void);//名字可以公开protected:getAsset(void);//财产可以继承,但需要保护private:getSecret(void);//自己的秘密只能自己看,别人不知道为好…};例如1.公有(public)成员可以在类外访问。2.

7、私有(private)成员只能被该类的成员函数访问。3.保护(protected)成员只能被该类的成员函数或派生类(有关基类和派生类的概念我们在后面介绍)的成员函数访问。在声明类时,声明为public、private、protected的顺序和次数可以是任意的,不过公有的接口函数放在前面更好,有时我们可能只想知道怎样使用一个类的对象,那只要知道类的公有接口就行了,不必阅读private关键字以下的部分。默认的成员访问权限都是private。当然,如果类中的所有成员都是private,类将无法与外界交流数据,从而失去意义,所以

8、通常把访问数据的成员函数声明为public,作为对外界的接口。类成员有三种不同的访问权限classStudent{private:charName[30];charSex;charAge;public:voidRegister(char*name,charsex,intage);voidD

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。