質問

JLS 7で読んで次の文章。

周囲のタイプパラメータの名前を使用するコンパイル時エラーです。 クラスメソッドのヘッダーまたは本体の宣言

その意味を説明してください。

役に立ちましたか?

解決

それはあなたができないことを意味します

class Test<T> {
    static void f(T a) {
    }
}
.

あなたは

をしなければなりません
class Test<T> {
    static <T> void f(T a) {
    }
}
.

静的メソッドの一般的なタイプは、クラスの一般的なタイプまたは他の方法とは無関係です。

だから

のようなことさえできること
class Test {
    static <A, B, C> void f(A a, B b, C c) {
    }
}
.

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top