Java子类型问题:必需:$1,其中类型$1<;:
我有一个班级网页Java子类型问题:必需:$1,其中类型$1<;:,java,generics,Java,Generics,我有一个班级网页 public class Page { public String pageId; ... } 通过特殊页面进行扩展 public class SpecialPage extends Page { public String specialPageId; } 现在我有一节课 public class Session<P extends Page> { public list<P> listPages; } 公共课堂会
public class Page
{
public String pageId;
...
}
通过特殊页面进行扩展
public class SpecialPage extends Page {
public String specialPageId;
}
现在我有一节课
public class Session<P extends Page> {
public list<P> listPages;
}
公共课堂会话{
公共列表
listPages;
}
现在当我这样做的时候
Session<Page> session;
Page somePage;
...
session.listPages.add(somePage)
会话;
翻页;
...
session.listPages.add(somePage)
我得到了错误
found : Page
required: _$1 where type _$1 <: Page
找到:第页
必需:$1,其中类型$1您需要为泛型会话
声明提供类参数,以便可以知道类型p
Session<SpecialPage> session;
会话;
例如。可能的重复:行会话
应该为您提供有关原始类型的警告。不要忽略这个警告,你永远不应该使用原始类型。对不起,这是一个错误,忘记添加它了。更新question@moderator:你能删除这个问题吗。在纯用java重新运行确切的代码时,我不会出现上述错误。我试图重现错误,但无法重现,所以我发现我的代码出错时遗漏了一些东西,我问了这个问题。