软件工程(第3版)第6章面向对象的概念与模型.ppt

软件工程(第3版)第6章面向对象的概念与模型.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第三篇 面向对象方法学 第6章 面向对象的概念与模型 6.1 面向对象程序设计实例 6.1.1 用对象分解取代功能分解 面向对象的程序设计技术以对象(Object)为核心,用这种技术开发出的程序由一系列对象组成。 对象是对现实世界实体的正确抽象,它是由描述内部状态、表示静态属性的数据,以及可以对这些数据施加的操作(实现对象的动态行为),封装在一起所构成的统一体。对象之间通过传递消息互相通信,以模拟现实世界中不同实体彼此之间的联系。 传统的程序设计方法把精力集中于设计解题算法(即处理数据的过程),因此也称为面向过程的程序设计方法。这样做实质上也是在用计算机的观点进行程序设计工作。  但是,计算机观点与人类观点终究有很大区别,面向过程的思维方式也并不符合人类习惯的思维方式。 由于用面向过程方法开发软件的方法与过程,不同于人类认识世界解决问题时习惯采用的方法与过程,因此使得实现解法的解空间与描述问题的问题空间在结构上明显不同,这不仅增加了开发软件的难度,也使得所开发出的软件难于理解。 人类习惯的解决问题的方法是使用“顾客—服务员”的工作模式。 面向对象程序设计方法模仿人类习惯的解题方法,用对象分解取代功能分解,也就是把程序分解成一系列对象,每个对象都既有自己的数据(描述该对象所代表的实体的属性),又有处理这些数据的函数(通常称为服务或方法,它们实现该对象应有的行为)。 不同对象之间通过发送消息向对方提出服务要求,接受消息的对象主动完成指定功能提供所要求的服务。程序中所有对象分工协作,共同完成整个程序的功能。事实上,对象是组成面向对象程序的基本模块。 面向对象程序设计方法的提出,是软件开发方法的一次革命,它代表了计算机程序设计的一种新颖的思维方法,是解决软件开发所面临的困难的最有希望的方法之一。 6.1.2 设计类等级 这个简单的图形程序需要使用圆类和弧类这两类对象,也就是说,我们把该程序中的对象划分成两类。 得到图6.2所示的类等级 6.1.3 定义属性和服务 1.定义属性 所谓定义属性就是确定每个属性的数据类型和数据结构,同时还要确定每个属性的访问权限。 2. 定义服务 定义服务的主要任务就是设计完成每项服务功能的算法。 6.1.4 用C++语言实现 #include 〈graphics.h〉 #include 〈conio.h〉 enum Boolean{false,true}; class Location{ protected: int X: int Y: phblic: Location(int IntiX,int InitY); int GetX( ); int GetY( ); }; class Point:public Location{ protected: Boolean Visible; public: Point(int InitX,int InitY); void Show( ); void Hide( ); Boolean Is Visible( ); };  class Circle:public Point{ protected: int Radius; pubic; Circle(int InitX;int InitY,int InitRadius); void Show( ); void Hide( ); int GetRadius( ); };  class Arc:public Circle{ private: int StartAngle;

文档评论(0)

autohhh + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档