public class AClass<X extends AnInterface>{
public AClass(X x){
}
}
public class Y implements AnInterface{
}
在调用代码中,如果我有:
public static<X extends AnInterface> void main(String args){
AnInterface y = new Y();
AClass a = new AClass<AnInterface>(y);
}
我应该能够在 AClass 的构造函数中使用 X 来让它工作,对吧?我收到错误消息,告诉我 AClass 的构造函数应该是 AnInterface 类型?
已编辑更改AClass a = new AClass<AnInterface>(y);
最佳答案
你需要告诉 AClass 它期望什么类型。
public static void main(String args){
AnInterface y = new Y();
AClass<AnInterface> a = new AClass<AnInterface>(y);
}
关于Java泛型-构造函数类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11429294/