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

标签 java json intellij-idea

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

String public;
String metaClass;

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

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

最佳答案

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

String public

...无法编译。

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

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

来自docs :

The rules and conventions for naming your variables can be summarized as follows: ... Also keep in mind that the name you choose must not be a keyword or reserved word.

这是 keywords and reserved words 的完整列表.

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

关于java - 将单词 `public` 声明为字符串变量 intellij 时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45835069/

相关文章:

java - 如何检查 Azure 中应用程序网关的运行状况

java - MongoDB : how to get all elements that contain an array using Java Driver?

json - Microsoft.Extensions.Configuration 的 reloadOnChange 如何为 appsettings.json 工作

json - 从 github 安装 NPM 依赖项

java - 使用 REST assured 进行 JSON 验证

android - Android Studio 中的代码完成

java - 从 Java Servlet 模拟用户

java - hibernate.cfg.xml 未导出到可执行 jar

java - SonarQube 不会通过 Gradle 为完全覆盖的类显示每个文件的详细报告

java - 如何将多个步骤目录粘合到 Intellij 中的 cucumber 测试?