对于违反里氏替换原则的两个类A和B,可以采用的候选解决方案是()A、尽量将一些需要扩展的类或者存在变化的类设计为抽象类或者接口,并将其作为基类,在程序中尽量使用基类对象进行编程B、创建一个新的抽象类C,作为两个具体类的超类,将A和B共同的行为移动到C中,从而解决A和B行为不完全一致的问题C、将B到A的继承关系改成组合关系D、区分是Is-a还是Has-a。如果是Is-a,可以使用继承关系,如果是Has-a,应该改成组合或聚合关系
对于违反里氏替换原则的两个类A和B,可以采用的候选解决方案是()
- A、尽量将一些需要扩展的类或者存在变化的类设计为抽象类或者接口,并将其作为基类,在程序中尽量使用基类对象进行编程
- B、创建一个新的抽象类C,作为两个具体类的超类,将A和B共同的行为移动到C中,从而解决A和B行为不完全一致的问题
- C、将B到A的继承关系改成组合关系
- D、区分是Is-a还是Has-a。如果是Is-a,可以使用继承关系,如果是Has-a,应该改成组合或聚合关系
相关考题:
对于违反里氏替换原则的两个类A和B,可以采用的候选解决方案是() A.尽量将一些需要扩展的类或者存在变化的类设计为抽象类或者接口,并将其作为基类,在程序中尽量使用基类对象进行编程B.创建一个新的抽象类C,作为两个具体类的超类,将A和B共同的行为移动到C中,从而解决A和B行为不完全一致的问题C.将B到A的继承关系改成组合关系D.区分是Is-a还是Has-a。如果是Is-a,可以使用继承关系,如果是Has-a,应该改成组合或聚合关系
对于模板定义关键字class和typename说法不正确的是( )。A.程序中的class并不能都替换为typenameB.class和typename都可互相替换C.程序中的typename都能替换为ClassD.程序中的部分class可以替换为typename
对于违反里氏替换原则的两个类A和B,可以采用的候选解决方案中,正确的是( )。A.尽量将一些需要扩展的类或者存在变化的类设计为抽象类或者接口,并将其作为基类,在程序中尽量使用基类对象进行编程 B.创建一个新的抽象类C,作为两个具体类的超类,将A和B共同的行为移动到C中,从而解决A和B行为不完全一致的问题 C.将B到A的继承关系改成组合关系 D.区分是Is-a还是Has-a。如果是Is-a,可以使用继承关系,如果是Has-a,应该改成组合或聚合关系
试题(4)、(5)遵守面向对象设计原则可以有效地提高系统的复用性和可维护性。应用 (4) 则可扩展已有的系统,并为之提供新的行为; (5) 则建议在面向对象程序设计中,应尽量针对接口编程,而不是针对实现编程。(4)A.开闭B.里氏替换C.依赖倒置D.接口隔离(5)A.里氏替换B.依赖倒置C.接口隔离D.最小知识
对于模板定义关键宁class和typename说法不正确的是( )。A.程序中的class并不能都替换为typenameB.class和typename都可互相替换C.程序中的typename都能替换为classD.程序中的部分class可以替换为typename
●某网站系统在用户登录时使用数字校验码。为了增强安全性,现在要求在登录校增加字母或图片。如果直接修改原有的生成登录校验码的程序代码,则违反了面设计原则中的(33)。(33)A.开闭原则B.里氏替换原则C.最少知识原则D.组合复用原则
面向对象分析与设计中的(37)是指一个模块在扩展性方面应该是开放的,而在更改性方面应该是封闭的;而(38)是指子类应当可以替换父类并出现在父类能够出现的任何地方。A.开闭原则B.替换原则C.依赖原则D.单一职责原则
● 面向对象分析与设计中的 (37) 是指一个模块在扩展性方面应该是开放的,而在更改性方面应该是封闭的;而 (38) 是指子类应当可以替换父类并出现在父类能够出现的任何地方。(37)A. 开闭原则B. 替换原则C. 依赖原则D. 单一职责原则(38)A. 开闭原则B. 替换原则C. 依赖原则D. 单一职责原则
以下关于子类和父类的叙述中,正确的是()。A、代码中使用父类对象的地方,都可以使用子类对象替换B、代码中使用子类对象的地方,都可以使用父类对象替换C、父类定义的对象与子类定义的对象在属性和方法上一定相同D、父类定义的对象与子类定义的对象在属性和方法上一定不同
单选题评标时,评标委员会对于外省投标人采用了比自省投标人更宽松的投标条件的行为,()A违反了公正原则B违反了公平原则C符合公正原则D符合公平原则