首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
对于违反里氏替换原则的两个类A和B,可以采用的候选解决方案中,正确的是( )。
对于违反里氏替换原则的两个类A和B,可以采用的候选解决方案中,正确的是( )。
admin
2013-01-20
75
问题
对于违反里氏替换原则的两个类A和B,可以采用的候选解决方案中,正确的是( )。
选项
A、尽量将一些需要扩展的类或者存在变化的类设计为抽象类或者接口,并将其作为基类,在程序中尽量使用基类对象进行编程
B、创建一个新的抽象类C,作为两个具体类的超类,将A和B共同的行为移动到C中,从而解决A和B行为不完全一致的问题
C、将B到A的继承关系改成组合关系
D、区分是“Is-a”还是“Has-a”。如果是Is-a,可以使用继承关系,如果是Has-a,应该改成组合或聚合关系
答案
A
解析
里氏替换原则是面向对象设计原则之一,由Barbara liskov提出,其基本思想是,一个软件实体如果使用的是一个基类对象,那么一定适用于其子类对象,而且觉察不出基类对象和子类对象的区别,即把基类都替换成它的子类,程序的行为没有变化。反过来则不一定成立,如果一个软件实体使用的是一个子类对象,那么它不一定适用于基类对象。
在运用里氏替换原则时,尽量将一些需要扩展的类或者存在变化的类设计为抽象类或者接口,并将其作为基类,在程序中尽量使用基类对象进行编程。由于子类继承基类并实现其中的方法,程序运行时,子类对象可以替换基类对象,如果需要对类的行为进行修改,可以扩展基类,增加新的子类,而无需修改调用该基类对象的代码。
转载请注明原文地址:https://kaotiyun.com/show/UwQZ777K
本试题收录于:
系统架构师上午综合知识考试题库软考高级分类
0
系统架构师上午综合知识考试
软考高级
相关试题推荐
定义栈的数据结构,要求添加一个min函数,能够得到栈的最小元素。要求函数min、push以及pop的时间复杂度都是O(1)。
输入一棵二元查找树,将该二元查找树转换成一个排序的双向链表。要求不能创建任何新的结点,只调整指针的指向。 比如将二元查找树转换成双向链表4=6=8=10=12=14=16。
编码实现字符串转整型的函数(实现函数atoi的功能),据说是神州数码笔试题。如将字符串”+123”-->123,”-0123”-->-123,“123CS45”-->123,“123.45CS”-->123,“CS123.45”-->0
C#中Property与Attribute的区别,他们各有什么用处,这种机制的好处在哪里?
如果WindowsXP能够识别网络适配器如何安装网络适配器。
通过网上邻居查找名字为mary的计算机。
从【打印机和传真】窗口界面开始,设置本地打印机“MicrosoftfficeDocu.mentImagewr4ter”为网络打印机。
使用站点管理器方式添加站点,其中站点地址为tian.cn,用户名为tian,密码为tian,保存在名为xy的文件夹中,并以两者登录方式连接该站点。
在Excel97中,若有公式“=“四川”&“成都””,则其结果为()。A.四川B.成都C.四川成都D.以上都不是
随机试题
钢轨温度在公式()范围时,为最佳铺轨时间,一般情况下,应安排在此条件下铺轨。
通信链路的带宽是描述通信线路的______。
对于疑似Lowe综合征的患儿,应进行的检查有
极性最大的化合物是
糖尿病微血管病变特异改变是()
二审法院根据当事人上诉和案件审理情况,对上诉案件作出相应裁判。下列哪一选项是正确的?()
中央银行的职能有()。
挫折—侵犯学说是由()提出来的。
设在区间[e,e2]上,数p,q满足条件px+q≥lnx,求使得积分取得最小值时p,q的值.
微型计算机中,显示器和数码相机都是输出设备。
最新回复
(
0
)