我可以在 Java 中将我的变量命名为"public"以进行 JSON 序列化/反序列化吗?



所以我正在使用一个公共API,它向我发送了一个JSON对象,其中包含一个名为"public"的布尔字段。

{  
    ...
    "public" : true,
    ...
}

我正在使用 GSON 将其解析为 Java 类,但这迫使我声明以下变量,Java 词法分析器/解析器

当然不同意:
private boolean public;

有没有办法让我的变量被命名为 public

使用 Gson 的@SerializedName注释。

@SerializedName("public")
private boolean someOtherName;

不能在 Java 源代码中使用单词 public(或任何其他保留关键字)作为标识符名称。

大多数功能丰富的 JSON 解析器都有这样的注释或其他机制来命名 JSON 键,这些机制没有那么多的命名限制。

最新更新