【发布时间】:2011-12-10 21:17:14
【问题描述】:
我在下面的代码中遇到了一些问题。
public ArrayList<? extends IEvent> getEventsByDateRange(DateTime minStartTime, DateTime minEndTime)
{
ArrayList<? extends IEvent> returnedEvents = new ArrayList<GoogleEvent>();
returnedEvents.add(new GoogleEvent());
return (returnedEvents);
}
这会为“returnedEvents.add(new GoogleEvent()); line of code”返回以下编译错误:
类型中的方法add(capture#1-of ? extends IEvent) ArrayList 不适用于 参数(GoogleEvent)
类GoogleEvent的声明如下:
public class GoogleEvent implements IEvent {...}
我知道在 Java 中使用泛型有一些棘手的部分,因此是通配符,但我似乎无法弄清楚这一点。
谢谢。
【问题讨论】:
标签: java generics arraylist bounded-wildcard