将包命名为“foo.bar.import”是一个好主意吗?

时间:2017-03-15 18:57:12

标签: java intellij-idea

我正在使用IntelliJ Idea,我想将一些与数据导入相关的类从foo.bar移动到一个名为foo.bar.import的新包中

Idea为我创造了新的包装,但不允许我向它移动任何东西。我试过拖动,还有Refactor-> Move

enter image description here

我知道import是源代码中的保留字,但我找不到任何理由,为什么我不能命名这样的包。这是Idea中的错误还是在java语言中存在一些限制?

2 个答案:

答案 0 :(得分:3)

java语言规范将包名称定义为标识符序列,并定义标识符

  

标识符:       IdentifierChars但不是Keyword或BooleanLiteral或NullLiteral

由于import是关键字,因此它不是有效的标识符,因此不能用作包名称的一部分。

答案 1 :(得分:2)

正如@ 4Castle指出的那样,package namesidentifiers组成,不能包含keywordsimport是关键字。

我可以建议一个替代的包名:for.bar.domainmodel.dataimport