- 1、本文档共45页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
面向对象分析与设计Object Oriented Analysis and Design 广州大学华软软件学院 软件工程系 蒋慧勇 Email:jhy@ Tel:主要内容 OOAD基础知识 GRASP模式、OO原则和GoF设计模式 UML建模工具 Rational Rose 2003 OOAD基础知识 OO基本概念及特点 UML和类图关系 OO原则与模式 OO基本概念 首先根据客户需求抽象出业务对象;然后对需求进行合理分层,构建相对独立的业务模块;之后设计业务逻辑,利用多态、继承、封装、抽象的编程思想,实现业务需求;最后通过整合各模块,达到高内聚、低耦合的效果,从而满足客户要求。 面向对象的分析根据抽象关键的问题域来分解系统。面向对象的设计是一种提供符号设计系统的面向对象的实现过程,它用非常接近实际领域术语的方法把系统构造成“现实世界”的对象。 OO术语 对象:对象是运行期的基本实体,它是一个封装了数据和操作这些数据的代码的逻辑实体。 类:类是具有相同类型的对象的抽象。一个对象所包含的所有数据和代码可以通过类来构造。 封装:封装是将数据和代码捆绑到一起,避免了外界的干扰和不确定性。对象的某些数据和代码可以是私有的,不能被外界访问,以此实现对数据和代码不同级别的访问权限。 继承:继承是让某个类型的对象获得另一个类型的对象的特征。通过继承可以实现代码的重用:从已存在的类派生出的一个新类将自动具有原来那个类的特性,同时,它还可以拥有自己的新特性。 多态:多态是指不同事物具有不同表现形式的能力。多态机制使具有不同内部结构的对象可以共享相同的外部接口,通过这种方式减少代码的复杂度。 动态绑定:绑定指的是将一个过程调用与相应代码链接起来的行为。动态绑定是指与给定的过程调用相关联的代码只有在运行期才可知的一种绑定,它是多态实现的具体形式。 消息传递:对象之间需要相互沟通,沟通的途径就是对象之间收发信息。消息内容包括接收消息的对象的标识,需要调用的函数的标识,以及必要的信息。消息传递的概念使得对现实世界的描述更容易。 方法:方法(Method)是定义一个类可以做的,但不一定会去做的事。 OO特点 封装 继承 多态 类的复用 封装 类(class) 接口(interface) 包(package) 类图(UML) UML 类图 UML 接口 UML 包 继承 类的继承(extends) 接口的继承(extends) 接口的实现(implements) 多态 把不同的子类对象都当作父类来看,可以屏蔽不同子类对象之间的差异,写出通用的代码,做出通用的编程,以适应需求的不断变化。 方法多态 方法重载(overloading) 方法覆盖(overriding) 对象变量多态(李氏替换原则)。 泛型多态(genericity )。 实现运行时多态技术的条件: 有一个继承层次关系; 在子类中重写基类的方法; 通过基类的引用对子类对象进行调用。 类的复用 继承 优点: 容易进行新的实现,因为其大多数可继承而来。 易于修改或扩展那些被复用的实现。 缺点: 破坏了封装性,因为这会将父类的实现细节暴露给子类。 “白盒”复用,因为父类的内部细节对于子类而言通常是可见的。 当父类的实现更改时,子类也不得不会随之更改。 从父类继承来的实现将不能在运行期间进行改变。 组合也就是一个类的对象是另外一个类的成员 class Head{ Head(){System.out.println( head );} } class Body{ Body(){System.out.println( body );} } class Person(){ Head h=null; Body b=null; Person() { ?????????? h=new Head(); b =new Body(); } } 优点: 容器类仅能通过被包含对象的接口来对其进行访问。 “黑盒”复用,因为被包含对象的内部细节对外是不可见。 封装性好。 实现上的相互依赖性比较小。 每一个类只专注于一项任务。 通过获取指向其它的具有相同类型的对象引用,可以在运行期间动态地定义(对象的)组合。? 缺点: 从而导致系统中的对象过多。 为了能将多个不同的对象作为组合块来使用,必须仔细地 对接口进行定义 UML和类图关系 实现关系(Realization) 泛化关系(Generalization) 关联关系(Association) 聚合
您可能关注的文档
- 中国竞技体育历程回顾.ppt
- AutoCADⅡ教学重点2004.ppt
- Atthebar酒吧.ppt
- B--基础心理学(下).ppt
- 2014公路工程技术标准新规范.ppt
- a世界地理(海陆轮廓、特殊经纬线).ppt
- 2014人教版八年级英语上unit8SectionB1.ppt
- B8题四:认识论转向与马克思的哲学革命.ppt
- 中国国防与军队建设的成就.ppt
- begoingto表将来时的用法..ppt
- 《Pd@MIL-101(Cr)-NH2和基于MIL-101(Cr)核壳材料的合成及催化性能的研究》.docx
- 《超声弹性成像联合钼靶X线在乳腺肿块诊断中的价值》.docx
- 《我国商业银行贷款损失准备动态特征研究》.docx
- 《基于GPS-INS组合测姿方法研究》.docx
- 《叙事疗法缓解退役运动员职业转型期就业焦虑的个案研究》.docx
- 《鲍曼不动杆菌脓毒症大鼠中性粒细胞的蛋白质组学研究》.docx
- 《基于改进型无迹卡尔曼滤波的锂离子电池峰值功率预测》.docx
- 《锂电材料产业动态跟踪及趋势洞察月报(2024年2月)》范文.docx
- 智能家居物联网设备接入与管理方案研究.doc
- 智能家居系统建设作业指导书.doc
文档评论(0)