对于违反里氏替换原则的两个类A和B,可以采用的候选解决方案中,正确的是( )。
A.尽量将一些需要扩展的类或者存在变化的类设计为抽象类或者接口,并将其作为基类,在程序中尽量使用基类对象进行编程 B.创建一个新的抽象类C,作为两个具体类的超类,将A和B共同的行为移动到C中,从而解决A和B行为不完全一致的问题 C.将B到A的继承关系改成组合关系 D.区分是“Is-a”还是“Has-a”。如果是Is-a,可以使用继承关系,如果是Has-a,应该改成组合或聚合关系
第1题:
对违反里氏替换原则的两个类,可以采用的候选解决方案正确的是()。
A.创建一个新的抽象类C,作为两个具体类的超类,将A和B共同的行为移动到C中,从而解决A和B行为不完全一致的问题。
B.将B到A的继承关系改成组合关系。
C.区分是“is-a”还是“has-a”。如果是“is-a”,可以使用继承关系,如果是“has-a”应该改成组合关系。
D.尽量将一些需要扩展的类或者存在变化的类设计为抽象类或者接口,并将其作为基类,在程序中尽量使用基类对象进行编程。
第2题:
里氏替换原则的主要内容是“父类对于子类应该是完全可替换的”
第3题:
12、()是指子类应当可以替换父类并出现在父类能够出现的任何地方。
A.开闭原则
B.里氏代换原则
C.依赖倒转原则
D.单一职责原则
第4题:
5、里氏替换原则的主要内容是“父类对于子类应该是完全可替换的”。
第5题:
下列关于设计模式的原则描述,哪些是错误的?
A.依赖倒置原则,高层模块应该依赖底层模块,二者都不依赖其抽象;抽象不应该依赖细节;细节应该依赖抽象
B.接口隔离原则,建立单一接口,不要建立庞大臃肿的接口,尽量细化接口,接口中的方法尽量少
C.开放封闭原则,尽量通过修改已有代码来完成变化,而不是通过扩展软件实体来解决需求变化
D.里氏替换原则,在使用基类的的地方可以任意使用其子类,能保证子类完美替换基类