计算机软件技术基础第三章.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《计算机软件技术基础第三章.ppt》由会员分享,可在线阅读,更多相关《计算机软件技术基础第三章.ppt(46页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第三章第三章 面向对象的程序设计方法面向对象的程序设计方法1.1.面向对象技术面向对象技术2.2.面向对象方法中的基本概念面向对象方法中的基本概念3.3.什么是面向对象程序设计什么是面向对象程序设计4.VB4.VB的面向对象方法的面向对象方法本章要求:本章要求:13.1 面向对象技术定定义义:面面向向对对象象技技术术是是强强调调在在软软件件开开发发过过程程中中面面向向客客观观世世界界或或问问题题域域中中的的事事物物,采采用用人人类类在在认认识识客客观观世世界界的的过过程程中中普普遍遍运运用用的的思思维维方方法法,直直观观、自自然然地地描述客观世界中的有关事物。描述客观世界中的有关事物。基基本本
2、特特征征主主要要有有抽抽象象性性、封封装装性性、继继承承性性和和多多态态性性。面面向向对对象象技技术术是是软软件件工工程程中中最最为为流流行行的的软软件件系系统统分分析与设计的方法。析与设计的方法。VBVB类类库库中中封封装装了了大大量量的的可可视视控控件件,并并为为其其设设计计了了各各自的属性和方法。自的属性和方法。2基本特征(1)抽象性)抽象性(Abstract)就是忽略事物中与当前目标无关的非本质特征,更充分地注意与当前目标有关的本质特征。从而找出事物的共性,并把具有共性的事物划为一类,得到一个抽象的概念。例如,在设计一个学生成绩管理系统的过程中,考察学生张华这个对象时,就只关心他的班级
3、、学号、成绩等,而忽略他的身高、体重等信息。抽象性是对事物的抽象概括描述,实现了客观世界向计算机世界的转化。将客观事物抽象成对象及类是是面向对象方法的第一步。33.1 面向对象技术(2)封装性)封装性(Encapsulation)就是把对象的属性和行为结合成一个独立的单位,并尽可能隐蔽对象的内部细节。封装有两个含义:一是把对象的全部属性和行为结合在一起,形成一个不可分割的独立单位。对象的属性值(除了公有的属性值)只能由这个对象的行为来读取和修改;二是尽可能隐蔽对象的内部细节,对外形成一道屏障,与外部的联系只能通过外部接口实现。4基本特征3.1 面向对象技术(3)继承性)继承性(Inherita
4、nce)是一种联结类与类的层次模型。继承性是指特殊类的对象拥有其一般类的属性和行为。继承意味着继承意味着“自动地拥有自动地拥有”,即特殊类中不必重,即特殊类中不必重新定义已在一般类中定义过的属性和行为,而它却自新定义已在一般类中定义过的属性和行为,而它却自动地、隐含地拥有其一般类的属性与行为。动地、隐含地拥有其一般类的属性与行为。继承允许和鼓励类的重用,提供了一种明确表述共性的方法;继承下来的属性和行为是隐式的;继承是传递的。5基本特征3.1 面向对象技术(4)多态性)多态性(Polymorphism)是指类中同一函数名对应多个具有相似功能的不同函数,可以使用相同的调用方式来调用这些具有不同功
5、能的同名函数。继承性和多态性的结合,可以生成一系列虽类似但独一无二的对象。由于多态性,针对相同的消息,不同对象可以有独特的表现方式,实现特性化的设计。6基本特征3.1 面向对象技术3.2 面向对象方法中的基本概念对象类对象与类的关系消息和方法7p对象的广义定义什么是对象(object)?现实世界中的任何一个事物都可以看成是一个对象。自然的实体:一个人,一辆汽车,一个教师逻辑结构:一个银行帐号,一个学生的学籍档案,客户通信录对对象象83.2 面向对象方法中的基本概念对象是人们要研究的任何事物,其特性是:(1)每一个对象必须有一个名字名字以区别于其它对象;(2)用属性属性(或叫状态)来描述它的某些
6、特征;(3)有一组操作操作,每一个操作决定对象的一种行为。/这是关于对象的广义定义对对象象9p对象的广义定义3.2 面向对象方法中的基本概念对象是基本的运行实体运行实体,它既包含数据(属性),也包括作用于数据的操作(行为);一个对象把属性和行为封装成一个整体;对象是数据和对数据的操作的结合体;从程序设计者来看,对象是一个程序模块;从用户来看,对象为他们提供了所希望的行为。对对象象10p面向对象系统中的对象3.2 面向对象方法中的基本概念人 类果 类鱼 类类定义了一个大体上相似的对象,具有共同属性特征和行为特征。类类11p类的概念3.2 面向对象方法中的基本概念“类”是对具有共同属性特征和行为特
7、征一个或多个对象的抽象描述。把一组对象的共同特性加以抽象并存储在一个类中的能力,是面向对象技术最重要的手段。类类123.2 面向对象方法中的基本概念p什么是类(class)?手机类手机的基本功能是一致的。属功能相同的一类商品。类的属性:品牌,颜色、外形尺寸功能相同:拨打电话、接听电话、收发短信等。事件 来电话方法 接听电话 挂断电话属性 颜色 外形尺寸能否照相类类133.2 面向对象方法中的基本概念p类的形象表示Class Studentint number;String name;float score;Public Student(int number1,String name1)numb
8、er=number1;name=name1;Public void getScore(float score1)score=score1;print();属性操作类类143.2 面向对象方法中的基本概念pOOP中类的例子类是对一组性质相同的对象的抽象描述,是对一组数据和方法的封装。对象则是类的具体化,是类的实例。可以这样定义对象:对象是类的一个实例,包括了数据和过程。类实例对象=实例类对象2对象3对象1抽象抽象实例化实例化=对对象象与与类类的的关关系系153.2 面向对象方法中的基本概念p对象与类的关系(1)消息 Message消息是要求某个对象执行其中某个功能操作的规格说明。OOP中的一条消
9、息由消息选择器(“消息操作”或“消息名”)及若干个参数和接受消息的对象三部分组成。例如:student1.modify(score1)消消息息和和方方法法163.2 面向对象方法中的基本概念p消息和方法消息的例子接受消息的对象 参数 student1.modify(score1);消息名消息名消消息息和和方方法法17(1)消息 Message3.2 面向对象方法中的基本概念p消息和方法“方法”对应于对象的行为(能力),即它是实现对象所具有的功能操作的代码段。在VB程序中,方法即是窗体中定义的过程、函数,它是该类所能执行的操作的算法实现。通常每个类中包含多个方法(C+中称为成员函数),每个方法由
10、方法名(函数名+参数表)和说明该成员函数的算法实现的一段代码所组成。消消息息和和方方法法183.2 面向对象方法中的基本概念p消息和方法(2)方法(method)3.3 什么是面向对象程序设计3.3.1 结构化程序设计方法3.3.2 面向对象程序设计方法19p结构化程序设计的基本思想按功能划分模块,分而治之分而治之。分解系统时按照自顶向下的顺序,逐步求精。设计时使各模块间的关系尽可能简单,功能上相对独立,从而可单独验证模块的正确性。203.3 什么是面向对象程序设计3.3.1 结构化程序设计方法主控模块功能模块1功能模块7功能模块2功能模块3功能模块6功能模块5功能模块4结构化程序的组成21p
11、结构化程序的组成 3.3 什么是面向对象程序设计3.3.1 结构化程序设计方法把数据结构和处理数据的操作过程分离为相互独立的实体。用数据表达实际问题中的信息;程序代码则实现用于处理加工这些数据的算法。简而言之,就是数据和操作代码分离数据和操作代码分离。22p结构化程序设计方法的基本特点3.3 什么是面向对象程序设计3.3.1 结构化程序设计方法给程序员增加了负担:必须确保数据和代码匹配。当数据结构改变时,所有相关的处理过程都要进行相应的修改,可维护性低。即使要对不同的数据格式(结构和类型)作同样的处理计算,也必须编写不同名的过程程序,可重用性不好。23p数据和操作代码分离 产生的问题3.3 什
12、么是面向对象程序设计3.3.1 结构化程序设计方法用面向对象程序设计语言中的对象和类直接模拟现实世界中的对象,将问题空间直接映射到软件空间。便于设计出尽可能直接、自然地表示问题求解方法的软件。面向对象的这种思维方式符合人类的自然思维习惯,使我们能够在程序中自然地描述现实世界的实体和问题,增强了程序代码的可读性,有利于控制软件的复杂性。243.3 什么是面向对象程序设计3.3.2 面向对象程序设计方法p模块化将一个复杂的大规模软件系统划分成几个规模较小、相对简单的模块,即分而治之分而治之。面向对象程序设计方法是按对象来划分。面向对象的软件系统由对象组成,对象之间通过消息传递互相联系。253.3
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机软件 技术 基础 第三
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内