ジェネリックではない子を介して親クラスからジェネリックメソッドに適切にアクセスするにはどうすればよいですか?

バジンガ

JavachildSwingライブラリからJComboBoxクラスを拡張するこのクラス(と呼びます)があります。ここで、のオブジェクトを作成し、を渡してそのオブジェクトのchildメソッドを呼び出そうとすると、次の警告が表示されます。addItem(Object)String

Type safety: The method addItem(Object) belongs to the raw type JComboBox. References to generic type JComboBox<E> should be parameterized.

このメソッドを呼び出す適切な方法は何ですか?childジェネリックではない<String>ため、ジェネリック型でインスタンス化できませんchild他にこれを行う方法がわかりません。どんな助けでもいただければ幸いです。

PS。の内容を変更することchildはできません。

ルーク・メライア

あなたが望むのは、あなたの子クラスをJComboBox<String>だけでなく、の子にすることですJComboBoxこれにより、ポップアップの小さな警告が停止します。

例:

public class Child extends JComboBox<String>{

}

これを行うと、すべての汎用メソッド、フィールドなどがであり、StringではなくなりますObject

編集:

子クラスは変更できないとおっしゃっていましたね。これは物事をかなり難しくします。

これを行う簡単な方法は実際にはありません。回避策を実行しても、最終的にはこの警告が表示されます。あなたの1つのオプション(私が見ることができる)は@SuppressWarnings("unchecked")、警告を生成するコードの上に注釈を使用するために使用することです。これにより、警告が表示されなくなります。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

Related 関連記事

ホットタグ

アーカイブ