包名称的Java代码约定
可能重复:包名称的Java代码约定,java,coding-style,package,Java,Coding Style,Package,可能重复: 我想知道对于包含几个单词的包名是否有一些代码约定。例如,包名com.dreamcom.objectInterfaces。驼峰案例适用于这种情况吗?摘自@Wikipedia(重点添加): 包通常是使用分层命名模式定义的,带有 层次结构中由句点(.)分隔的级别(发音为“点”)。 虽然在命名层次结构中较低的包经常被引用 作为中较高的相应包的“子包” 在层次结构中,包之间几乎没有语义关系。 Java语言规范建立了包命名约定 避免两个已发布的包具有相同的 名称命名约定描述了如何创建唯一的
我想知道对于包含几个单词的包名是否有一些代码约定。例如,包名
com.dreamcom.objectInterfaces
。驼峰案例适用于这种情况吗?摘自@Wikipedia(重点添加):
包通常是使用分层命名模式定义的,带有
层次结构中由句点(.)分隔的级别(发音为“点”)。
虽然在命名层次结构中较低的包经常被引用
作为中较高的相应包的“子包”
在层次结构中,包之间几乎没有语义关系。
Java语言规范建立了包命名约定
避免两个已发布的包具有相同的
名称命名约定描述了如何创建唯一的包
名称,以便广泛分发的包具有唯一的
名称空间。这使得软件包可以单独、轻松、高效地进行
自动安装和编目
通常,包名称以的顶级域名开始
组织,然后是组织的域,然后是任何
子域,按相反顺序列出。然后组织可以选择
其包的特定名称包名称应全部为小写
尽可能使用字符。
例如,如果加拿大一个名为MySoft的组织创建了
包处理分数,将包命名为ca.mysoft.fracts
将分数包与其他类似包区分开来
由另一家公司创建。如果一家名为MySoft的德国公司也
创建一个分数包,但将其命名为de.mysoft.fracts
,然后
这两个包中的类是在一个唯一且独立的
命名空间
用于消除包名称歧义的完整约定和
无法直接使用Internet域名时的命名包
Java语言第7.7节中描述了作为包名的
规格
另见:
更多信息可以在JLS中找到,驼峰式包装的名称不是我喜欢的。在包名称中有多个单词,我考虑如下:
原因是包名镜像了主机操作系统上的目录。在Linux上,“com.dreamcom.objectInterfaces”和“com.dreamcom.objectInterfaces”是不同的,而在Windows上它们是相同的 @BeauGrantham在链接中找到了正确答案。我想这会使这成为一个重复的问题。对不起。这个问题实际上使另外两个问题变得复杂。惯例是不使用骆驼壳。我将维基百科摘录的相关部分加粗,使其更加明显。