面向对象分析与设计第三章优秀PPT.ppt
《面向对象分析与设计第三章优秀PPT.ppt》由会员分享,可在线阅读,更多相关《面向对象分析与设计第三章优秀PPT.ppt(38页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、面向对象分析与设计第三章第一页,本课件共有38页3.1 引言2第二页,本课件共有38页3.1 引言3第三页,本课件共有38页3.1 引言4第四页,本课件共有38页3.2 设计类层次结构q例子:要给集合(Collection)建模,集合是可以包含其它对象的对象。q需求中需要四类集合qList:该集合把所有的对象按照插入的顺序放置qBag:该集合中的对象没有排序qLinkedList:该集合中的对象使用序列对象来排序,每个对象指向序列中的下一个对象qArrayList:该集合中的对象使用数组来排序,数组是相邻内存位置的序列5第五页,本课件共有38页3.2 设计类层次结构6第六页,本课件共有38页3
2、.2 设计类层次结构q从一般类到特殊类(普通类到抽象类)q首先确定层次结构的底部有哪些类(Bag,LinkedList,ArrayList)接着找出比较一般的概念,以丰富模型,共享元素定义。因此把LinkedList,ArrayList组合到List中,把List和Bag组合到Collection中。q在开发层次结构时,要查找消息可以放置消息的层次结构越高越好。在查找其它类元素前,应先查找消息,因为消息表示对象给外界显示的接口,这是它们最重要的特性。7第七页,本课件共有38页3.2 设计类层次结构q考虑下面三个消息,将消息放在已有类层次结构中的哪个类中呢?qcontains(:Object):
3、boolean /在集合中搜索对象qelementAt(:int):Object/参数指定的位置检索对象qnumberOfElement():int /返回集合中的对象数。8第八页,本课件共有38页添加实现代码q已经有了类层次结构,还确定了消息的位置,下面必须添加实现元素(字段、构造函数和方法)q方法放在哪里,这会引出两个重要的概念:抽象和重定义(与重载区别?)q不可能在Collection类中编写contains实现方法,因为有序集合和无序集合的搜索算法是不同的。所以,必须先在Bag上实现contains方法。q但List类怎么办呢?9第九页,本课件共有38页添加实现代码10第十页,本课件共
4、有38页添加实现代码11第十一页,本课件共有38页添加实现代码12第十二页,本课件共有38页添加实现代码q现在就能获得继承的好处:只编写一个方法,它可用于List的任何直接或间接子类。q对于LinkedList,ArrayList来说,elementAt消息的实现代码是不同的。q给numberOfElements编写实现代码:q把元素数存储为字段q需要时,再计算元素数13第十三页,本课件共有38页14第十四页,本课件共有38页3.4 抽象类q抽象类是至少有一个抽象方法的类抽象方法可以是该类本身的方法,也可以是从超类继承来的。q若类中包含了抽象方法,那么该类只能声名为抽象类(或接口),抽象类中可
5、以有抽象方法或具体方法,也可以没有抽象方法,甚至可以什么都没有。q在抽象类中可以为部分方法提供默认的实现,从而避免在子类中重复实现它们,提高代码的可重用性,这是抽象类的优势所在q而接口中只能包含抽象方法,扩展功能时,在抽象父类中加入具体方法不会影响子类;但在接口中加入抽象方法会影响到所有实现类。q一个类只能继承一个直接的父类,这个父类有可能是抽象类;但一个类可以实现多个接口,这是接口的优势所在。15第十五页,本课件共有38页3.4 抽象类16第十六页,本课件共有38页3.4 抽象类q抽象类用来定义类需要执行哪些行为而不必提供每一个行为的明确实现q抽象类不能直接被实例化。q抽象类的子类也可能仍然
6、是一个抽象类。关键在于子类中是否提供了所有抽象方法的实现代码。q抽象类是相对于接口而言是一个更加优秀的类的抽象模型。它除了具有接口一样的功能之外,还能将具体类中公共的方法实现集中到抽象类中,而不用在每一个具体类中重复。17第十七页,本课件共有38页3.4 抽象类q抽象类有如下优点q它们允许更丰富、更灵活地建模q它们可以共享更多的代码,因为可以编写具体的方法来使用抽象的方法q更便于封装变化点18第十八页,本课件共有38页3.4 抽象类q在设计类层次结构是,应记住,大多数超类都是抽象的。下面说明了继承层次结构是从底向上派生的:q1、在问题域中查找具体的概念,推导出它们的知识和 行为q2、在具体的类
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 面向 对象 分析 设计 第三 优秀 PPT
限制150内