VC讲义第07单元类与对象(I).doc

VC讲义第07单元类与对象(I).doc

ID:62033986

大小:67.50 KB

页数:20页

时间:2021-04-15

VC讲义第07单元类与对象(I).doc_第1页
VC讲义第07单元类与对象(I).doc_第2页
VC讲义第07单元类与对象(I).doc_第3页
VC讲义第07单元类与对象(I).doc_第4页
VC讲义第07单元类与对象(I).doc_第5页
资源描述:

《VC讲义第07单元类与对象(I).doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第7单元类和对象(I)本单元教学目标介绍面向对象程序设计方法的基本原理以及类和对象的概念。教学要求掌握面向对象的程序设计思想,类和对象的概念,以及类的声明方法和对象的引用.授课内容7.1面向对象的程序设计在面向对象的程序设计技术(OOP:ObjectOrientedProgramming)出现前,程序员们一般采用面向过程的程序设计方法.面向过程的程序设计方法采用函数(或过程)来描述对数据结构的操作,但又将函数与其所操作的数据分离开来。作为对现实世界的抽象,函数和它所操作的数据是密切相关、相互依赖的:特定的函数往

2、往要对特定的数据结构进行操作;如果数据结构发生改变,则必须改写相应的函数。这种实质上的依赖与形式上的分离使得用面向过程的程序设计方法编写出来的大程序不但难于编写,而且难于调试和修改。面向对象程序设计从所处理的数据入手,以数据为中心而不是以功能为中心来描述系统。数据相对于功能而言具有更强的稳定性。面向对象程序设计与结构化程序设计最大的区别就在于,前者首先关心的是所要处理的数据,而后者首先关心的是功能。面向对象程序设计是一种围绕真实世界的概念来组织模型的程序设计方法,它采用对象来描述问题空间中的实体.关于对象这一概

3、念,目前还没有统一的定义。一般的认为,对象是包含现实世界物体特征的抽象实体,反映了系统为之保存信息和(或)与之交互的能力。对象是一些属性及服务的封装体,在程序设计领域,可以用“对象=数据+作用于这些数据上的操作"这一公式来表达。类是具有相同操作功能和相同的数据格式(属性)的对象的集合,可以看作抽象数据类型的具体实现.从外部看,类的行为可以用新定义的操作(方法)加以规定。类是对象集合的抽象,规定了这些对象的公共属性和方法;对象是类的一个实例。例如,苹果是一个类,而放在桌上的那个苹果则是一个对象。对象和类的关系相当

4、于一般的程序设计语言中变量和变量类型的关系。消息是向某对象请求服务的一种表达方式。对象内有方法和数据,外部的用户或对象对该对象提出的服务请求,可以称为向该对象发送消息。面向对象的编程方法具有四个基本特征:1。抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,忽略与主题无关的细节。例如,在设计一个学生成绩管理系统的过程中,考察学生张三这个对象时,我们只关心他的班级、学号、成绩等,而他的身高、体重等信息就可以忽略。抽象包括两

5、个方面,一是过程抽象,二是数据抽象。过程抽象是指任何一个明确定义功能的操作都可被使用者看作单个的实体看待,尽管这个操作实际上可能由一系列更低级的操作来完成。数据抽象定义了数据类型和施加于该类型对象上的操作,并限定了对象的值只能通过使用这些操作修改和观察。2。封装:封装是面向对象的特征之一,是对象和类概念的主要特性。封装把过程和数据封藏起来,对数据的访问只能通过已定义的界面。面向对象技术的基本概念就是现实世界可以被描绘成一系列完全自治、封装的对象,这些对象通过一个受保护的接口访问其他对象。一旦定义了一个对象的特性

6、,则有必要决定这些特性的可见性,即哪些特性对外部世界是可见的,哪些特性用于表示内部状态。通常,应禁止直接访问一个对象的实际表示,只能通过操作接口访问对象,这称为信息隐藏。事实上,信息隐藏是用户对封装性的认识,封装则为信息隐藏提供支持。封装保证了模块具有较好的独立性,使得程序维护修改较为容易.对应用程序的修改仅限于类的内部,因而可以将应用程序修改带来的影响减少到最低限度。3.继承:继承是一种联结类与类的层次模型。继承允许和鼓励类的重用,提供了一种明确表述共性的方法.对象的一个新类可以从现有的类中派生,这个过程称为

7、类继承。新类继承了原来类的特性,新类称为原来类的派生类(子类),而原来类称为新类的基类(父类)。派生类可以从其基类那里继承方法和成员变量,当然也可以对之进行修改或增加新的方法使之更适合特殊的需要。这也体现了大自然中一般与特殊的关系。继承性很好地解决了软件的可重用性问题。4。多态性:多态性是指允许不同类的对象对同一消息作出响应.例如同样的加法,把两个时间加在一起和把两个整数加在一起的内涵肯定完全不同。多态性包括参数化多态性和包含多态性。多态性语言具有灵活、抽象、行为共享、代码共享的优势,很好的解决了应用程序函数同

8、名问题。面向对象程序设计具有许多优点:开发时间短,效率高,可靠性高,所开发的程序更强壮.由于面向对象编程的编码可重用性,可以在应用程序中大量采用成熟的类库,从而缩短了开发时间,使应用程序更易于维护、更新和升级.继承和封装使得应用程序的修改带来的影响更加局部化。7。2类与对象7。2.1类的声明C++类的结构比较复杂,可以将其看成是一种既包含数据又包含函数的数据类型。显然,描述不同编程对象

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

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

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