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

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

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

伊谢尔伦
伊谢尔伦

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

모든 응답(2)
刘奇

a와 b는 모두 ArrayList이며 런타임에 일반 유형을 얻을 수 없습니다. a 또는 b에서 요소를 가져온 다음 인스턴스of를 사용하여 요소 유형을 확인한 다음 캐스팅할 수 있습니다.

迷茫

Java에서는 제네릭이 컴파일 단계에서만 존재합니다. 즉, 제네릭은 런타임 중에 삭제됩니다.
그러면 역직렬화는 모두 ArrayList입니다. 컴파일하기 전에 ArrayList<T>로 변환할 수 있습니다. 런타임 중에는 판단이 이루어지지 않습니다.

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿