generics「無検査キャストです」の回避方法

昨日の、うまくキャストできない問題が解決しました。
エラーメッセージ(「無検査キャストです」)で探したらたくさん見つかりました。
一番簡単な解決方法は、genericsクラスを継承させれば良いみたいです。

// genericsクラスを継承しただけのクラス
//--- AValueVector.java ---
package aoivm.java;
import java.util.Vector;
class AValueVector extends Vector<AValue>{};

//--- hoge.java ---
// 以下のように書くとエラーになる
Vector<AValue> ary = (Vector<AValue>)aval.value; 
// 継承したクラスにキャストすると成功
AValueVector ary = (AValueVector)aval.value;