Che*_*het 2 java generics collections interface
为什么这不起作用......
public ArrayList<Edge> getEdges() {
return A;
//A is an Arraylist of type 'Action'. Action implements Edge.
}
Run Code Online (Sandbox Code Playgroud)
接口Edge包括:public ArrayList getEdges();
尽管如此.
public Edge getEdges() {
return B;
//B is an 'Action'. Action implements Edge.
}
Run Code Online (Sandbox Code Playgroud)
界面Edge包括:public Edge getEdges();
谢谢你,切特
因为while Edge是子类型Action, ArrayList<Action>不是子类型ArrayList<Edge>.
请ArrayList<? extends Edge>改用.
你可以看一下本教程的4.通配符部分,虽然我建议你仔细阅读它,因为它真的很有帮助.