public abstract class A<T> {
public static void test(A i) { for (String s : i.get()) {} }
public abstract Iterable<String> get();
}
上記のコードで次のようになる理由:
incompatible types
required: String
found: Object
test
しかし、メソッドの引数を に変更するA<Object>
と、コンパイルは成功しますか? 変数の未定義のジェネリック パラメータがメソッドの戻り値の型の明示的なジェネリック パラメータをドロップするのはなぜですか?