日期:2011-03-22 16:17:00 来源:本站整理
等价和近似关系[Java编程]
本文“等价和近似关系[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
针对担当大概会产生这样的一个争辩:担当只能改进原底子类的函数吗?若答案是必定的,则衍生范例就是与底子类完好相同的范例,因为都拥有完好相同的接口.这样造成的后果就是:我们完好可以将衍生类的一个对象换成底子类的一个对象!可将其想象成一种“纯替换”.在某种意义上,这是举行担当的一种抱负方法.此时,我们普通认为底子类和衍生类之间存在一种“等价”关系——因为我们可以理直气壮地说:“圆就是一种多少形状”.为了对担当举行测试,一个办法就是看看自己能否能把它们套入这种“等价”关系中,看看能否有意义.
但在很多时刻,我们必须为衍生范例加入新的接口元素.所以不但扩大了接口,也成立了一种新范例.这种新范例仍可替换成底子范例,但这种替换并非完善的,因为不可在底子类里拜候新函数.我们将其称作“近似”关系;新范例拥有旧范例的接口,但也包含了其他函数,所以不能说它们是完好等价的.举个例子来说,让我们考虑一下制冷机的情形.假定我们的房间连好了用于制冷的各种掌握器;也就是说,我们已拥有必要的“接口”来掌握制冷.目前假定机械出了弊端,我们把它换成一台新型的冷、热两用空调,冬季和夏天都可以利用.冷、热空调“近似”制冷机,但能做更多的事情.由于我们的房间只安装了掌握制冷的设备,所以它们只限于同新机械的制冷部份打交道.新机械的接口已得到了扩大,但现有的系统并不知道除原始接口以外的任何东西.
熟习了等价与近似的辨别后,再举行替换时就会有掌控得多.固然大大都时刻“纯替换”已经充足,但您会发目前某些情形下,仍旧有明显的来由需求在衍生类的底子上增添新功效.通过前面对这两种情形的谈论,相信大家已心中有数该若何做.
以上是“等价和近似关系[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |
- ·上一篇文章:多形对象的交换操纵
- ·下一篇文章:承当:重新操纵接口
- ·中查找“等价和近似关系”更多相关内容
- ·中查找“等价和近似关系”更多相关内容
评论内容只代表网友观点,与本站立场无关!
评论摘要(共 0 条,得分 0 分,平均 0 分)
查看完整评论