私はジェネリッククラスを書いています
public class SomeClass<T> {
public static <T extends Comparable<? super T>> T min(Collection<? extends T> c) {
T min = c.iterator().next();
for (T element : c)
if (element.compareTo(min) < 0)
min = element;
return min;
}
}
public class Main {
public static void main(String[] args) {
SomeClass<Integer>.min(Arrays.asList(1, 2, 3)); // compile-time error
SomeClass.min(Arrays.asList(1, 2, 3)); // ok
}
}
ジェネリック クラスSomeClass
とジェネリック メソッドSomeMethod
の型パラメーターT
は同じですか、それとも違いますか?
string でコンパイル時エラーが発生するのはなぜSomeClass<Integer>.min(Arrays.asList(1,2,3));
ですか?