IS-A关系& HAS-java中的关系

时间:2014-04-13 15:59:08

标签: java

我在java中遇到了一些困惑。那是

我有那些问题

Bar IS-A Object
Foo IS-A Bar
Foo HAS-A Bar 

这是

A. class Foo extends Bar{}.
B. class Bar extends Foo{}
C. class Bar{}
D. class Foo extends Bar{Bar bar;}

答案是C,D。

但A也应该回答,因为 Foo IS-A Bar 是类 Foo extends Bar {} 。这是正确的?请解释一下。非常感谢你

2 个答案:

答案 0 :(得分:2)

在这个问题中,您必须通过提供的提示选择类的正确签名。

  

Bar IS-A Object

所以这绝对是C。

  

Foo IS-A Bar

所以这里Foo扩展了BAr ..但也注意到了

  

Foo HAS-A Bar

所以类Foo必须有一个Bar实例。因此唯一的选择是D在这里

答案 1 :(得分:1)

由于Foo HAS-A Bar声明,A不是答案。

在这个问题中你可以想象一个&&之间的陈述。如果有||除了A也是如此。