【发布时间】:2013-04-01 01:55:06
【问题描述】:
我有这样的课:
public class Barn {
String type;
Animal animal;
}
public class Horse extends Animal {
}
public class Cow extends Animal {
}
我想序列化它们的列表:
List<Barn> barns = new ArrayList<Barn>();
Barn barn1 = new Barn();
barn1.setType("horse");
barn1.setAnimal(new Horse());
barns.add(barn1);
Barn barn2 = new Barn();
barn2.setType("cow");
barn2.setAnimal(new Cow());
barns.add(barn2);
...
Group<Barn> barns = gson.fromJson(serialized);
当我序列化时,Animal 属性的类型信息将丢失。有没有办法以某种方式安装解析器侦听器,以便在遇到列表中的每个元素时提供正确的类来反序列化?这就是手动提供描述类类型的字符串背后的想法。
谢谢
【问题讨论】: