当B类继承自A类时,它必须是"B级是 - A级"吗?

nop*_*ole 3 oop

它说,在一本书中

类Name具有姓氏和名字的属性.

地址继承自Name,并具有街道号,街道名称,城市,州,邮政编码的附加属性.

这似乎与其他情况不同

猫继承自动物,而猫则是"动物".

对于良好的对象设计,这是"必须"关系还是强制性的?地址应该继承姓名吗?

更新:因为一些用户要求提供源: alt文本http://img192.imageshack.us/img192/8903/learningrubyp133smaller.png

Ikk*_*kke 13

不,我不认为该地址应该继承自Name.除了一个字符串字段外,它们没有任何共同之处.地址不应该有姓氏.

只有在某些行为得到扩展的强烈而明确的关系时,才应使用继承性.

人们应该支持组合而非继承,因为它允许松散耦合和行为的动态变化.