私のJavaプログラムでは、型のオブジェクトをにキャストする必要がありList<? extends SomeBaseClass>
ますList<SomeBaseClass>
。直接キャストすると、コンパイラはチェックされていないキャストがあると文句を言います(警告を表示します)。すべてのオブジェクトをスーパークラスに変換できることは確かですが、コンパイラーはそれを認識せず、チェックされていないキャストを報告します。警告を取り除くにはどうすればよいですか?@SupressWarnings( "unchecked")以外の方法はありますか?
PS:コードはうまく機能します、私は物事を行うためのより良い方法があるかどうかだけ興味があります。
編集:
解決策:このタイプのキャストは、将来リストを変更しないことが確実な場合にのみ行う必要があります。ただし、リストからオブジェクトを削除するときは、個々のオブジェクトをキャストすることをお勧めします。