Java 为什么谷歌';s JSON转换器“;GSON“;不';不遵循方法优先于骑行概念?
请看一下以下场景:Java 为什么谷歌';s JSON转换器“;GSON“;不';不遵循方法优先于骑行概念?,java,json,overriding,gson,Java,Json,Overriding,Gson,请看一下以下场景: public class ParentClass { private Integer testVar = 1; public Integer getTestVar() { return testVar; } public void setTestVar(Integer testVar) { this.testVar = testVar; } } public class ChildClass e
public class ParentClass {
private Integer testVar = 1;
public Integer getTestVar() {
return testVar;
}
public void setTestVar(Integer testVar) {
this.testVar = testVar;
}
}
public class ChildClass extends ParentClass {
private Integer testVar = 2;
@Override
public Integer getTestVar() {
return testVar;
}
@Override
public void setTestVar(Integer testVar) {
this.testVar = testVar;
}
}
public class TestClass {
public static void main(String[] args) {
ChildClass childClass = new ChildClass();
childClass.setTestVar(3);
Gson gson = new Gson();
String str = gson.toJson(childClass);
System.out.println(str);
}
}
这里,我使用了com.google.gson.gson包进行json转换。它给出以下输出:
{“testVar”:1}
我期望json字符串中包含3,但得到的是parentClass的testVar变量所持有的值