下载此文档

第1章面向对象程序设计基础.ppt


文档分类:IT计算机 | 页数:约13页 举报非法文档有奖
1/13
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/13 下载此文档
文档列表 文档介绍
第1章面向对象程序设计基础
面向过程程序设计
计算机硬件系统
各类应用软件
编译系统
开发软件/平台
操作系统
……
用户
计算机硬件系统、软件系统和用户
计算机硬件系统
程序员开发层面
编译系统
开发软件/平台
操作系统
……
用户
程序员开发层面
面向过程程序设计的局限(1)
在面向过程程序设计中,被操作的数据仍然是嵌入在编程语句中的,并且与程序逻辑混合在一起,计算机的信息世界与现实世界之间的映射关系仍然不直接,不明确。反之,如果程序员面对的开发层面在逻辑上与现实世界相似相近,那么不仅开发过程将更简捷,而且软件的质量也一定更好。
用面向过程的方法开发较大的软件系统,数据缺乏保护,表面上看,程序可以访问几乎所有的数据,似乎很方便,其实不然。理想的状态是,数据被封装起来,外界要访问数据,就应该调用相应的函数,函数将所需要的数据按指定的格式包装好,传给外界;否则数据无法被访问。
面向过程程序设计的局限(2)
使用面向过程的方法,在同一个应用程序中可以共享某些程序段,但是从总体上看,程序代码是按程序员指定的顺序执行的,程序段(例如,函数)通常是在特定的上下文条件下才正常运行的。如果要在一个应用程序中重用另一个应用程序的代码段,那几乎是不可能的。也就是说,面向过程的程序设计语言本身没有这样的机制支持代码重用。 使用面向过程程序设计方法建立的应用程序是很难修改的,虽然结构化程序设计方法使得应用程序结构很清晰,但是程序模块之间紧密耦合,彼此依赖,一个模块的输出可能是另一个或几个模块的输入;许多表面独立的模块实际是依赖某些全局变量传递状态,共同工作的。修改一处的代码可能造成其他代码不能正常工作。这种情形导致系统维护代价高昂,系统缺乏灵活性。
面向对象程序设计的概念
对象
对象标识——即对象名,是一个对象区别于其他对象标识符。
对象状态——即对象的属性,是描述对象各种特征的信息,是对象的静态特征。
对象行为——即对象能够提供的服务,对象的行为也可以理解为与对象属性相关的所有合法的操作,是对象的动态特征。
类和对象
. 类
哺乳纲动物
奇蹄目动物

一匹白马
一匹白马和马的分类
偶蹄目动物

一匹黑马
……
……
……
……
……
类是抽象数据类型,类有名称,此外,类主要有三种成分:
完整描述事物特征的数据的类型声明,这是对对象的静态特征的抽象描述;
能够访问并处理数据的所有操作,这是对象的动态特征的描述;
访问权限,对类、以及类中定义的数据、方法访问的限制。
抽象与封装
抽象
抽象是分析问题域和设计类的时候的工作。严格的抽象,应该将类简化到只使用最基本的元素来表现该类的对象的本质,例如,假设我们要设计两个类:军马和运输马,我们应该将军马和运输马的所有共性的部分提取出来,形成一个新的类,称为马,而军马类和运输马类中都只剩下能互相区别各自对象的基本元素。所以,抽象往往表现为从相关或相似的类中提取共同的元素的过程。
封装
封装是把表示对象静态特征的数据和表现对象动态特征的方法组织在一起,并且规定数据和方法的访问权限。不难发现,封装的过程实际上是隐含在设计类的过程中完成的,这个功能是面向对象程序设计语言环境所提供的。
类与类的关系
继承
根据一个(或多个)已存在的类产生一个新的类的过程叫做继承,即新类继承了原有的类,或者说原有的类派生出了新类,原有的类称为基类或父类,新产生的类叫做派生类或子类。
单继承与多继承
接口
聚合
嵌套
多态
多态是指同一事物在不同的场合具有不同作用的现象。
从多态发生的时机上区分,可以分为编译时的多态和运行时的多态两种。
重载
隐藏和重写
编译时的多态
运行时的多态
关联、消息与委托
消息机制反映了调动对象的动态关系,是程序运行的内在机理,所以有人总结,在面向对象程序中:对象+ 消息= 程序。
关联
消息机制
委托
委托的机制就是解决如何在运行中动态地决定消息的接收者,消息可以在对象间传递,这样,请求也就从一个对象传递到另一个对象,直到找到能完成这项工作的对象。委托机制常用于事件处理、异常处理等需要动态寻找接收者的场合。
统一建模语言UML简介
UML图
UML具有许多图形化的工具用来制作各种视图,UML图由图表组成。UML图有9种

第1章面向对象程序设计基础 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数13
  • 收藏数0 收藏
  • 顶次数0
  • 上传人中国课件站
  • 文件大小0 KB
  • 时间2011-10-11