《面向对象技术》PPT课件

上传人:wuli****0220 文档编号:244894309 上传时间:2024-10-06 格式:PPT 页数:23 大小:347.47KB
返回 下载 相关 举报
《面向对象技术》PPT课件_第1页
第1页 / 共23页
《面向对象技术》PPT课件_第2页
第2页 / 共23页
《面向对象技术》PPT课件_第3页
第3页 / 共23页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,*,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,第二讲 面向对象技术,主讲人:,吕松茂,主要内容,面向对象技术的提出,什么是面向对象技术,对象,类,封装性,问题的提出,传统的结构化程序设计(,Structured Programming-SP,),方法,使用,SP,方法设计程序的步骤,数据声明,数据处理,结果输出,在数据处理过程中,采用的是自顶向下、分而治之的方法,将整个程序按功能划分为几个可独立编程的子过程模块,每一子模块完成指定的子任务,并且提供一个清晰、严格的调用界面,主过程通过调用各子过程完来成全部处理工作,。,f(1),过程/函数,f(2),f(2),f(3),数据结构,B,A,C,返回,存在的问题,(1),数据和函数分开,,重叠的数据存取使并行性和完整性的问题变得复杂,(2)本质上是,面向过程,的,以功能和需求为核心,而“功能”和“需求”又是不稳定和多变的,因此程序代码经常要进行修改,不易维护。,(3)程序代码,可重用性差,。程序中除少数标准库函数外,每设计一个程序时,程序员几乎从零做起。即使重用代码,通常也是通过拷贝或编辑重新生成一份。,如何解决,面向对象技术,(,Object-Oriented Programming,-OOP,),何为面向对象技术,与面向过程相对应(结构化程序设计),心理学研究表明,客观世界由许多对象组成,对象具有其属性和行为,对象之间存在着各种联系,这样能够更好的刻画问题域,也更接近人类的自然思维方式。这就是面向对象程序开发思想的由来。,面向对象的程序设计方法强调直接以问题域(现实世界)中的事物为中心来思考和认识问题,并按照这些事物的本质特征把它们抽象为对象,以作为构成软件系统的基础。,f(1),f(2),数据结构,简单类(规则),+,复杂联系,=,复杂系统,接口,函数,数据,比较,面向对象与面向过程设计对比,是一种数学思维或计算机思维方法,与人们认识世界的方法不同,以不稳定的、多变的“过程”和“操作” 为中心来构造系统,可重用性较差,是建立在认识方法学基础上的一项技术科学,比较自然地模拟了人类认识客观世界的方式;,以相对稳定的“对象” 为中心来构造系统,可重用性较好,面向过程程序设计,面向对象程序设计,将设计目标从模拟现实世界的行为转向了模拟现实世界中存在的对象及其各自的行为。,面向对象程序设计是在吸取结构化程序设计的一切优点的基础上发展起来的一种新的程序设计方法。它的,本质,是,把数据和处理数据的过程当成一个整体,对象。,在,OOP,中,将“对象”作为系统中最基本的运行实体,整个程序即由各种不同类型的对象组成,各对象既是一个独立的实体,又可通过消息相互作用,对象中的方法决定要向哪个对象发消息、发什么消息以及收到消息时如何进行处理等。,面向对象技术,对象,(,Object,),对象,是客观世界中的事物在人脑中的映像,这种映像通过对同一类对象的抽象反映成人的意识,并做为一种概念而存在。,每个对象都具有,属性,(,Attribute),和,方法,(,Method),这两方面的特征。对象的属性描述了对象的状态和特征,对象的方法说明了对象的行为和功能,并且对象的属性值只应由这个对象的方法来读取和修改,两者结合在一起就构成了对象的完整描述。,对象例一,例 1:考虑对象 “学生”,具体描述为:,对象名,属性,操作,学号、姓名、专业、性别、,年龄、身份证号、电话等等,获取和修改学号、姓名、,专业、性别、年龄等等,学生,( 表一 ),注意点,: 一体性,三者成为一体,对象例二,例 2:对象 “课程” 的有关抽象描述。,对象名,属性,操作,课程,课程名、编号、学时数、选课要求、任课教师等,获取并修改课程名、编号、学时数、选课要求、任课教师等,(表二 ),注意点: 1. 属性是对对象的静态描述.,2. 操作是对对象的动态描述.,外部是通过调用服务与对,象取得联系.,类(,Class),具有相似属性和行为的一组对象,就称为类。可见,有了类的概念以后,就可以对具有共同特征的事物进行统一描述,类是面向对象语言必需提供的用户定义的数据类型,它将具有相同状态、操作和访问机制的多个对象,抽象,成为一个对象类。,类与对象的关系,从一般意义上讲,对象(,Object),是现实世界中的,客观事物,。,类是把具有相同属性的事物划分为一类,从而得出的,抽象概念,。,类与对象的关系,类与对象的关系,类,对象,抽象定义 实例,学生,学生王强,汽车,桑塔纳,奔驰,宝马,类型,变量, 如,C,语言中的,int,和,int x;,类的特点-封装与隐藏,将算法和数据结构有机集成在一起,传统方法:数据和操作分离,支持模块化程序设计,类成为基本的模块,作为程序设计的基础,保护私有成员,隐藏实现细节,使程序的可维护性、安全性得到保证,封装(Encapsulation),面向对象语言把数据和操作封装于对象体之中,并提供一种访问机制,使对象的“私有数据”仅能由这个对象的操作来执行。用户只能通过允许公开的操作提出要求(消息),才能查询和修改对象的状态。,封装,封装是面向对象方法的一个重要原则。它有两个涵义:,第一个涵义是,把对象的全部属性和全部服务结合在一起,形成一个不可分割的独立单位(即对象)。,第二个涵义也称作“信息隐蔽”,即尽可能隐蔽对象的内部细节,对外形成一个边界(或者说形成一道屏障),只保留有限的对外接口使之与外部发生联系。这主要是指对象的外部不能直接地存取对象的属性,只能通过几个允许外部使用的服务与对象发生联系。,f(1),f(2),数据结构,接口,封装的例子,键盘,电视机,手机,面向对象技术的特点,(1)以,对象,为中心。由于对象自然地反映了应用领域的模块性,因此具有相对稳定性,可以被用作一个组件去构成更复杂的应用,又由于对象一般封装的是某一实际需求的各种成分,因此,某一对象的改变对整个系统几乎没有影响。,(2),封装性,。实现细节隐藏,,增强了安全性和简化编程,使用者不必了解具体的实现细节,而只需要通过外部接口,以特定的访问权限,来使用类的成员,(3),可复用性,。新的应用程序设计可在原有对象的数据类型和功能的基础上通过重用、扩展和细化来进行,而不必从头做起或复制原有代码,这样,大大减少了重新编写新代码的工作量,同时降低了程序设计过程中出错的可能性,达到了事半功倍的效果。,总结,面向对象技术,对象,类,封装性,谢谢大家,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!