- 55
- 0
- 约1.22万字
- 约 62页
- 2019-05-28 发布于天津
- 举报
从面向对象分析到面向对象设计(OOD)-Read.ppt
* * * * * 2. 为提高继承程度而修改类定义 如果在一组相似的类中存在公共的属性和公共的行为,则可以把这些公共的属性和行为抽取出来放在一个共同的祖先类中,供其子类继承,如图11.13(a)和(b)所示。在对现有类进行归纳的时候,要注意下述两点: (1)不能违背领域知识和常识;(2)应该确保现有类的协议(即同外部世界的接口)不变。 更常见的情况是,各个现有类中的属性和行为(操作),虽然相似却并不完全相同,在这种情况下需要对类的定义稍加修改,才能定义一个基类供其子类从中继承需要的属性或行为。 * 有时程序员只想用继承作为实现操作共享的一种手段,并不打算确保基类和派生类具有相同的行为。在这种情况下,如果从基类继承的操作中包含了子类不应有的行为,则可能引起麻烦。例如,假设程序员正在实现一个Stack(后进先出栈)类,类库中已经有一个List(表)类。如果程序员从List类派生出Stack类,则如图11.14(a)所示:把一个元素压入栈,等价于在表尾加入一个元素;把一个元素弹出栈,相当于从表尾移走一个元素。但是,与此同时,也继承了一些不需要的表操作。例如,从表头移走一个元素或在表头增加一个元素。万一用户错误地使用了这类操作,Stack类将不能正常工作。 * 图11.14(b)描绘了委托List类实现Stack类操作的方法。Stack类的每个实例都包含一个私有的List类实例(或指
您可能关注的文档
最近下载
- 2026年校招:国家电投面试题及答案.docx VIP
- 中职语文职业模块《口语交际协商》课件1.pptx VIP
- DB62∕T 5185-2025 天华肉羊DB62∕T 5185-2025 天华肉羊.docx VIP
- 2026年国家电投秋招面试题及答案.docx VIP
- 本规则适用于所有的特奥运动滚球比赛特奥会滚球运动的....pdf VIP
- 国家电投秋招面试题及答案.doc VIP
- 2026国家电投秋招面试题及答案.doc VIP
- 在线开放课程制作人员配备、培训与管理.docx VIP
- 2026年春招:国家电投面试题及答案.docx VIP
- 2026校招:国家电投面试题及答案.doc VIP
原创力文档

文档评论(0)