0
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);

4

2 に答える 2

2

AClassにどのタイプが期待されているかを伝える必要があります。

    public static void main(String args){
        AnInterface y = new Y();
        AClass<AnInterface> a = new AClass<AnInterface>(y);
    }
于 2012-07-11T09:26:01.890 に答える
0
public static void main(String[] args) {
    AnInterface y = new Y();
    AClass a = new AClass(y);
}
于 2012-07-11T09:21:30.973 に答える