-1
こんにちは、コードの行の不確かさ それは以下の階層のように見えます。コードでIはdoStuff()この何が意味ですか:MyInterfaceA <MyinterfaceB> myvariable in java?
MyIntA<MyIntB> var = doStuff();
参照他に
public interface MyIntA<T extends MyIntB> {
//stuff
}
2つ目
public interface MyIntB<T extends MyIntC>{
//stuff
}
した後、戻り値の型は
<T extends MyIntB> MyIntA <T>
MyIntA<MyIntB> var
はどのようなものですか?
どのタイプがvarですか?タイプInterface<Interface>
?
インタフェースを確認することができます詳細については
MyIntA<MyIntB>
である、それが宣言されているよう
var
の種類が同じ..ですタイプではない「タイプ」ではありません –'' 'MyIntA' ''は許可されます。 '' 'public interface MyIntA ' ''です。 '' T''は少なくとも '' MyIntB'''(一般的な共分散)です。ここで問題と思われるもの –
Sheinbergon
ジェネリック薬に慣れるのには時間がかかるので、あなたの混乱を理解しています。私はあなたの具体的な質問を理解していません。 'var'は' MyIntA 'と宣言されています。これは' var'のコンパイル時の型です( 'MyIntA'がインタフェースにあるので、より特定の実行時型を取得します)。 –