私は汎用クラスAを持っていますが、私は与えられたオブジェクトであるクラスに基づいてAのインスタンスを作成する必要があります。つまり、私は持っています:クラス<?>変数を使用して汎用オブジェクトを作成する
public void (Object obj) {
Class<?> c = obj.getClass();
A<c> = ...;
}
しかし、第三行目では、Eclipseはcは型に解決できないと言っています。ジェネリックパラメータを削除すると、「Aは生の型です。ジェネリック型Aへの参照をパラメータ化する必要があります。」
ここにはどのような正しい方法がありますか?
ありがとうございました。あなただけのクラスが必要な場合は
オブジェクト参照に大文字の 'B'を使用すると、特にジェネリックを使用しているときに、Java開発者にとって大変混乱します。 'obj'が良いでしょう。 – artbristol
大文字(CamelCaseなど)で始まる@artbristolが述べたことを詳述すると、クラスが示されます。小文字(例:camelCase)で始まる変数は変数を表します。 'c'は型ではなく、' c'は 'Class >'型のオブジェクトです。下のTalhaはこれに関する答えを持っています。 – Atreys
情報ありがとうございます。質問を修正しました。 – tsiki