2011-10-19 70 views
2

好的,所以这个问题可能会关闭,但地狱,早上4点半,我无法入睡,因为我仍然对我的Java中期问题感到沮丧。测试是一个在线的事情,你会看到你是如何立即做到的。基本类型vs基类

该测试写得很差,有大量的拼写错误和语法错误。我通常不关心这个问题,除了当你添加含糊不清的问题时,你不知道如何解释这个问题,因为你不能假设你可以按照正常的英语规则解析它。

一个特别的疑问,使我无法忍受:

什么是收藏的基本类型? (它是这样写的,大写字母C,我认为很重要。)

唯一两个相关的可能性是Object和Collections。现在我知道Collections是大多数集合类派生的类,所以我最初选择了这个类。在我的第二次运行中,我想,等一下。通过基类型,他是指什么是派生集合派生的基类? (毕竟,通过C的大写,它指出了Collections类的具体含义,而不仅仅是一般意义上的集合。)所以我改变了对Object的答案,因为我知道Collections扩展了Object。

原来我第一次是对的。

那么我的问题就是:如果我对这个问题有任何疑问,我是否有腿站立?或者我错过了基本类型和基类之间的一些区别?

+0

如果这是一个期中考试,你不能通过电子邮件向教师发送澄清信息吗? – millimoose

+0

如果“正确的”答案是“Collections”的“Collections”的基本类型,那显然是错误的。 “Collections”类的基类型是“Object”。请参阅Jon的答案以获得更多的解释。 –

回答

2

假设问题出现拼写错误,并且c应该是小写:的基本类型大部分集合类是Collection<E>接口。

如果问题拼写正确(大写'C'意思而不是拼写错误):Collections类的基类型为Object

无论如何,我会说这个问题很糟糕。

+1

这就是我的思维过程,为什么我先用Collection去了。但是,我反驳了它。感谢您的反馈。 – deanTheBean

5

现在我知道Collections是大多数集合类派生的类,所以我最初选择了这个类。

那么这是一个问题开始...因为它不是。 Collections是一个实用类,只有一个私有构造函数,其中没有子类。

Collections确实有Object作为超类,但是不是任何东西的超类。许多收集来自的最高等级(Object除外)是AbstractCollection,然后将AbstractList等等作为子类。

听起来这是一个糟糕的问题,但你自己的理解也是有缺陷的。听起来像是一个没有得分的抽签,但你应该可以提高与某人的测试质量。

+0

感谢Jon这个。我再次检查了API,并且你教会了我一些我不知道的东西。我广泛使用了ArrayList,但从未真正关注层次结构。我的集合类和集合接口之间可能也存在一些混淆。哦,我可能错了,但我现在对它有了更好的理解! – deanTheBean

0

我想这个问题实际上是询问关于java集合框架的主要/基本类型。这里的类型将像Set,List,Queue ..但不在上下文SuperType,SuperClass中。