【发布时间】:2012-04-30 19:11:25
【问题描述】:
假设我有两个对象:Person 和 ReqSingUp,而 ReqSingUp 包含 Person。
现在如果我尝试:
Person p=new Person("dan","lala");
ReqSingUp reqSingUp=new ReqSingUp(p);
String s = gson.toJson(reqSingUp,ReqSingUp.class);
Object o = gson.fromJson(s, Object.class);
if (o instanceof ReqSingUp) {
System.out.println("it's ReqSingUp");
}
if (o instanceof Person ) {
System.out.println("it's person");
}
它不满足任何条件(不满足 instanceof ReqSingUp 和 instanceof Person )。
有没有办法知道它是哪种类型?
提前致谢。
【问题讨论】:
-
没有。我不认为有办法。可能的一种解决方法是使用 json 标记之一来表示对象的类型。
-
你看过指南吗?这可能会有所帮助:sites.google.com/site/gson/…
-
这不是这个问题的变体吗? stackoverflow.com/questions/3629596/…