03新 面向对象的编程技术.ppt
上传人:qw****27 上传时间:2024-09-12 格式:PPT 页数:61 大小:137KB 金币:15 举报 版权申诉
预览加载中,请您耐心等待几秒...

03新 面向对象的编程技术.ppt

03新面向对象的编程技术.ppt

预览

免费试读已结束,剩余 51 页请下载文档后查看

15 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

面向对象的语言程序设计面向对象的编程技术面向对象程序设计的发展面向对象方法发展的背景面向对象方法发展的历史面向对象方法发展的历史面向对象方法发展的历史3.1.1面向对象的概念问题空间元素在方法空间中的表示称为对象(也称为实例instance),“对象”是现实世界的实体或概念在计算机逻辑中的抽象表示。面向对象的程序设计是以要解决的问题中所涉及到的各种对象为主要考虑因素。把问题看成是相互作用的事物的集合,用属性描述事物,对事物的操作叫做方法,事物称为对象,属性称为数据,对象是数据与方法的集合。OOP主要技术包括封装、继承、多态、覆盖。“对象”是面向对象方法中使用的最基本的概念。在应用领域中有意义的、与所要解决的问题有关系的任何事物都可以作为对象,它既可以是具体的物理实体的抽象,也可以是人为的概念,或者是任何有明确边界和意义的东西。总之,对象是对问题域中某个实体的抽象,设立某个对象就反映了软件系统保存有关它的信息并且与它进行交互的能力。例如,一名学生、一所学校、一个窗口、一座图书馆、一本图书、贷款、借贷······等等,都可以作为一个对象。由于客观世界中的实体通常都既有静态的属性,又有动态的行为,因此,面向对象方法中的对象是由描述对象属性的数据以及可以对这些数据施加的所有操作封装在一起构成的统一体。封装是指把对象的属性和行为结合成一个独立的系统单位,尽可能隐藏对象的内部细节,只保留有限的对外接口是之与外部发生联系。封装的思想是将对象内部的信息进行屏蔽,人们只能通过对象界面上的允许操作对对象进行动作,改变对象的属性及状态。对象的封装使我们不必关心诸如对象行为是如何实现的这样一些细节;同时,实现了模块化和信息隐藏,这样保证了程序的可移植性和安全性,也有利于对复杂对象的管理。“类”就是对具有相同数据和相同操作的一组相似对象的定义,也就是说,类是对具有相同属性和行为的一个或多个对象的描述,通常在这种描述中也包括对怎样创建该类的新对象的说明。通过类的定义可以实现代码的复用。我们不用去描述每一个对象,而是通过创建类的一个实例来创建该类的一个对象,这样大大简化了软件的设计。实例就是由某个特定的类所描述的一个具体对象new。方法就是对象所能执行的操作,方法描述了对象执行操作的算法,响应消息的方法。属性就是类中所定义的数据,它是对客观世界试题所具有的性质的抽象。消息就是要求某个对象执行在定义它的那个类中所定义的某个操作的规格说明。通常,消息由下述三部分组成:•消息的接收者•接收对象应采用的方法•方法所需要的参数例如,Mycircle是一个半径4cm、圆心位于(100,200)的Circle类的对象,也就是Circle类的一个实例,当要求它以绿色在屏幕上显示自己时,在C++语言中应该向它发出下列消息:Mycircle.Show(GREEN);Mycircle是消息的接收者;Show是接收对象应采用的方法;GREEN是方法所需要的参数。当Mycircle接收到这个消息后,将执行Circle类中所定义的Show操作。封装是指把对象的属性和行为结合成一个独立的系统单位,尽可能隐藏对象的内部细节,只保留有限的对外接口是之与外部发生联系。封装的思想是将对象内部的信息进行屏蔽,人们只能通过对象界面上的允许操作对对象进行动作,改变对象的属性及状态。对象的封装使我们不必关心诸如对象行为是如何实现的这样一些细节;同时,实现了模块化和信息隐藏,这样保证了程序的可移植性和安全性,也有利于对复杂对象的管理。广义地说,继承是指能够直接获得已有的性质和特征,而不必重复的定义它们。在面向对象程序设计中,继承是子类自动地共享基类(父类)中定义的属性和方法的机制。面向对象程序设计的许多强有力的功能和突出的优点,都来源于把类组成一个层次结构的系统(类等级):一个类的上层可以有父类,下层可以有子类。这种层次结构系统的一个重要性质是继承性,一个类直接继承其父类的全部描述(数据和操作)。鸟:全身有羽毛,后肢能行走,有翅膀能飞的一种动物。鹂li:(黄莺ying)羽毛黄色,从眼边到头后部有黑色斑纹,叫的声音很好听的一种鸟。鹂li:(黄莺ying)羽毛黄色,从眼边到头后部有黑色斑纹,叫的声音很好听的一种全身有羽毛,后肢能行走,有翅膀能飞的动物。实现继承机制的原理:继承具有传递性,如果类C继承类B,类B继承类A,则类C继承类A。因此,一个类实际上继承了它所在的类等级中在它上层的全部基类的所有描述,也就是说,属于某类的对象除了具有该类所描述的性质外,还具有类等级中该类上层全部基类描述的一切性质。当一个类只允许有一个父类时,类的继承是单一继承;当允许一个类有多个父类时,类的继承是多重继承。在一般类中定义的属性或方法被子类继承以后,可以具有不同