我有一个类动物和子类Cat和Dog,它扩展了Animal。 我有一个名为Zoo的类,其变量为List;
即
Class Animal {
String name;
}
Class Cat Extends Animal {
String color;
}
Class Zoo {
List<Animal> animalsInZoo;
public void printAnimalClass()
{
for(Animal a :animalsInZoo)
{
System.out.println(a.getClass.getName());
}
}
}
动物园的对象将有动物,可以是动物的对象或动物的子类 以下是Zoo类的Object的示例JSON表示。
{ "animalsInZoo" :
[
{"name":"A"},
{"name": "B","color":"white"}
]
}
我必须将其转换为java对象,使列表中的第一个动物转换为类Animal的Object,然后将其转换为Class Cat的对象
答案 0 :(得分:0)
你必须自己进行转换,假设你有另一种具有相同属性的动物:
Class Horse Extends Animal {
String color;
}
杰克逊不知道将{“name”:“B”,“color”:“white”}转换为Cat或Horse。
您可以添加一个属性来标记您需要转换为哪种动物。