java - 使用泛型的集合对象序列化之后,如何判断反序列化后Object的泛型?
伊谢尔伦
伊谢尔伦 2017-04-17 17:48:56
0
2
741

存在两个集合对象ArrayList<A> aArrayList<B> b

a和b对象经过序列化和反序列化之后得到的都是Object对象,此时如何判断Object对象具有的泛型种类进行强制类型转化,对a和b进行不同的业务处理。

伊谢尔伦
伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

全員に返信(2)
刘奇

a と b は両方とも ArrayList であり、それらのジェネリック型は実行時に取得できません。a または b から要素を取り出し、instanceof を使用して要素の型を決定し、それをキャストすることができます。

いいねを押す +0
迷茫

Java では、ジェネリックはコンパイル段階でのみ存在します。つまり、ジェネリックは実行時に消去されます。
デシリアライズはすべて ArrayList であり、コンパイルする前に任意の ArrayList<T> に変換できます。実行時には判断は行われません。

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート