java - 如何将 XML 文件反序列化为它自己的唯一类?

标签 java polymorphism xstream xml-deserialization

我有一个包含车辆数组的 XML 文件,但我需要能够反序列化它并获取每个对象并将其放入其自己的车辆中。

例如,这就是我的 XML 文件的样子:

<Vehicle-array>
   <Car></Car>
   <Truck></Truck>
   <Van></Van>
</Vehicle-array>

因此,我需要能够将 Car 元素反序列化为 Car 对象,而不是 Vehicle 对象。

我可以获得 Vehicle[] 的所有内容,并且每个元素都是特定的 Vehicle 类型。

最佳答案

将它们全部放入车辆数组中,然后使用instanceof进行转换

if(a instanceof Car)
    a = (Car) a ;
else if(a instanceof Truck)
    ...

关于java - 如何将 XML 文件反序列化为它自己的唯一类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17534871/

相关文章:

java - 存储用户输入的按位运算符的数据类型是什么

java - 用 java8 lambda 函数替换所有

java - Glassfish 4.1 : war inside ear does not expose webservices

polymorphism - 在 D 中非多态调用实例方法?

c++ - 从子类的STL vector 到基类 vector 的转换

java - 面向对象编程 - 避免 Switch/Case 和 If/else (JAVA)

java - 我们如何才能在 json 中隐含

java - 使用 Xstream 序列化枚举时如何指定别名

java - java实现异步消息队列

java - 使用 XStream 通过线路发送的 String 的反序列化问题