只需要帮助找出并理解我的测试问题的答案

时间:2016-03-15 16:43:01

标签: java iterator comparable

我在班上的最后一次考试中没有做得好,特别是关于多项选择。只是想知道你是否可以帮助我找出我在哪里出错了几个问题。对于这些问题,可以有不止一个答案,例如,正确的答案可能是a,b,d等......

package a;

public class B <T extends Comparable <T>> implements C<T>

问题1 :考虑上面的课程,以下哪个描述是正确的?

答:A是一个界面。

B:B是一个界面。

C:Comparable是一个界面。

D:C是一个界面。

E:T是一个界面。

对于这个问题,我回答了D,我认为是正确的。所以我假设这是另一个正确的答案,我在测试中也没有圈出来。

问题2

考虑上面的B类(上一个问题的相同代码),以下哪个关系是正确的?

答:B是A

b:B是C

C:B是可比较的

D:T是可比的

E:B有可比性

我回答了C,但是现在我认为正确答案可能是b和d?

问题4 : 考虑Java的Iterator和Comparable。以下哪些描述是正确的?

答:两者都是通用类。

b:两者都是通用接口。

c:迭代器可以使用Array List提高应用程序的效率。

D:迭代器可以提高使用链接列表的应用程序的效率。

为此,我回答了一个,并且d。我真的不知道这个。

如果你们给我答案,请尝试解释它们,因为我想真正了解正确的答案和原因。提前谢谢。

1 个答案:

答案 0 :(得分:0)

  1. 问题:是的,D确实是对的。但是除了这个,C也是正确的,因为Java.lang.Comparable在Interface(https://docs.oracle.com/javase/7/docs/api/java/lang/Comparable.html)中。由于我们不知道T是否是接口,唯一正确的答案是C和D.
  2. 问题:答案D和E是对的。 T和B类都实现或扩展java.lang.Comparable。但是:如果一个类实现了一个接口,它就不会得到它的子类。它只是获得“能力”,例如得到比较。 Oracle Doc States:“实现一个接口允许一个类对它承诺提供的行为变得更加正式。” (https://docs.oracle.com/javase/tutorial/java/concepts/interface.html) 4.问题:答案B肯定是正确的。 Iterator和Comparable都是接口。它们都是通用的,简而言之,它们可以与任何类型的对象一起使用,但是一旦你告诉它们哪种类型的对象只能使用那种类型的对象。如果我们从集合本身谈论迭代器,答案C和D就可以了。否则,迭代器不会带来效果。