Java中是否有保留的包名?

Joh*_*son 4 java

我有一个包裹com.test.mythingimport.理想情况下,我想要调用它com.test.mything.import.你能用它来命名import或者会引起冲突吗?

Sil*_*olo 12

来自JLS§7.4.1

编译单元中的包声明指定编译单元所属的包的名称(第6.2节).

PackageDeclaration:
 {PackageModifier} package Identifier {. Identifier} ; 
Run Code Online (Sandbox Code Playgroud)

其中Identifier在被定义JLS§3.8

Identifier:
 IdentifierChars but not a Keyword or BooleanLiteral or NullLiteral 
Run Code Online (Sandbox Code Playgroud)

因此包名称可以不是关键字(例如import),布尔(truefalse)或null.

  • “因此,包名称不能是关键字(例如 import)、布尔值(true 或 false)或 null。”。这是不对的。“IdentifierChars”在命名规则中很重要。例如,“foo-”作为标识符无效。 (2认同)

nas*_*kin -1

包名称由 Java 中文件结构的约定决定。如果您希望将包命名为com.test.mything.import,则您的包需要位于该/com/test/mything/import目录中(其中根目录是项目源代码的根目录)。