将单词"public"声明为字符串变量 intellij 时出错



如何在以下类成员字段中将 IntelliJ IDE 配置为不那么严格:

String public;
String metaClass;

目前,它显示有关String public成员的错误。

这是我想要的命名,因为我必须遵守 JSON 契约。

我想你在问为什么这段代码......

String public

。不编译。

或者换句话说:"为什么IntelliJ不允许这段代码?

单词public在 Java 中不是有效的变量名,因此任何编译器(无论是由 IntelliJ 还是其他任何东西托管(都不允许该代码。

从文档中:

命名变量的规则和约定可以总结如下: ... 另请记住,您选择的名称不得是关键字或保留字。

以下是关键字和保留字的完整列表。

在您的问题中,您写了"这是我想要的格式,因为 json 对象",我认为您的意思是你有包含名为"public"的属性的 JSON,并且您希望将其映射到具有名为"public"的属性的 Java 类。如果是这样,那么在将 JSON 转换为 Java 类时,您需要转换 JSON。您正在使用的任何 JSON 库都可能支持此功能。例如,杰克逊为此提供了@JsonProperty@JsonAlias注释......允许此 JSON:{"public": "true"}反序列化为具有此成员的类:@JsonAlias({ "public" }) public String publicScope

最新更新