A.尽量将一些需要扩展的类或者存在变化的类设计为抽象类或者接口,并将其作为基类,在程序中尽量使用基类对象进行编程 B.创建一个新的抽象类C,作为两个具体类的超类,将A和B共同的行为移动到C中,从而解决A和B行为不完全一致的问题 C.将B到A的继承关系改成组合关系 D.区分是Is-a还是Has-a。如果是Is-a,可以使用继承关系,如果是Has-a,应该改成组合或聚合关系
A.面向对象设计描述软件要做什么 B.面向对象分析不需要考虑技术和实现层面的细节 C.面向对象分析的输入是面向对象设计的结果 D.面向对象设计的结果是简单的分析模型
A.实体类 B.边界类 C.模型类 D.控制类
A.表示目标软件系统中具有持久意义的信息项及其操作 B.协调、控制其他类完成用例规定的功能或行为 C.实现目标软件系统与外部系统或外部设备之间的信息交流和互操作 D.分解任务并把子任务分派给适当的辅助类
A.包含(includE. B.扩展(extenD. C.分类(classification) D.聚集(aggregation)