【发布时间】:2012-03-29 05:15:31
【问题描述】:
我今天早些时候参加了名为“Java for Android I”的课程的考试,发现了这个我没有得到的问题。也许你们中的一些人可以为我解释一下。
问题:
查看此集合ArrayList p。一个类 Person 是一个 学生的超类。 ArrayList 实现 List 接口 (根据 Java-API)。
编译器不允许出现代码中提到的某些情况。为什么? 描述它们如何可能导致 p 不包含 Person 的实例 或者为什么 p 不是 ArrayList 。例如。 p.add("Hello"); 现在 包含一个 String 实例。
代码:
p = new ArrayList<Object>();
void method ( ArrayList<Student> als) { ... }
void method ( List<Person> lp ) { ... }
void method ( ArrayList<Object> alo) { ... }
你会如何描述这个问题?我只是不明白我的教授想让我回答什么。
对不起,如果引用的语法搞砸了。我是从瑞典语翻译过来的。
【问题讨论】:
-
这是问题的完整代码吗??
-
p与方法声明有什么关系? -
我猜有些东西在翻译中丢失了...
-
我同意,这听起来很混乱。
-
如果他想知道为什么你可以/不能将变量 p 传递给所示的方法,这是有道理的。这就是@YuRDeD 在他的回答中的意思
标签: java android list collections arraylist