为什么包名称经常以“com”开头?
可能的重复:
Java 包 com 和 org
我是一名 java 开发人员。现在我正在学习struts,当阅读教程时,一种好奇心侵入了我的脑海,
package com.something.something;
我知道这是一个非常简单的包声明,但是
package **com**.something.something;
这个包名称片段经常出现在许多商业发行版中。现在我想知道这是什么意思?请澄清一下。
谢谢并抱歉,如果我无法澄清它......
Possible Duplicate:
Java packages com and org
I am a java developer. Nowadays I am learning struts and when reading a tutorial a curiosity intruded in my mind regarding
package com.something.something;
I know it is a very simple package declaration but what about
package **com**.something.something;
This package name fragment often comes in many commercial distributions. Now I want to know what does it mean? Please clarify it.
Thanks and sorry if I couldn't clarify it...
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(6)
它只是一个命名空间定义,以避免类名冲突。
com.domain.package.Class
是已建立的 Java 约定,其中名称空间与公司域相反。It's just a namespace definition to avoid collision of class names. The
com.domain.package.Class
is an established Java convention wherein the namespace is qualified with the company domain in reverse.维基百科,在所有地方,实际上讨论了这个。
其想法是让作者使用他们拥有的 DNS 名称的变体来命名包,以确保所有包名称在全球范围内都是唯一的。例如,域名
joda.org
的所有者创建了许多名称以org.joda
开头的包,例如:org.joda.time
org.joda.time.base
org.joda.time.chrono
org.joda.time.convert
org .joda.time.field
org.joda.time.format
Wikipedia, of all places, actually discusses this.
The idea is to make sure all package names are unique world-wide, by having authors use a variant of a DNS name they own to name the package. For example, the owners of the domain name
joda.org
created a number of packages whose names begin withorg.joda
, for example:org.joda.time
org.joda.time.base
org.joda.time.chrono
org.joda.time.convert
org.joda.time.field
org.joda.time.format
这是反向拼写的域名。
例如,我的域名之一是hedgee.com。因此,我使用 com.hedgee 作为所有包的基本名称。
It's the domain name spelt out in reverse.
For example, one of my domains is hedgee.com. So, I use
com.hedgee
as the base name of all my packages.来自维基百科关于Java包命名的文章:
From the Wikipedia article on Java package naming:
例如:com.paresh.mainpackage
公司使用其反向 Internet 域名来开始其包名称,例如,com.example.mypackage 表示程序员在 example.com 创建的名为 mypackage 的包。
我在 http://download.oracle.com/javase 找到了此信息/tutorial/java/package/namingpkgs.html
For example: com.paresh.mainpackage
Companies use their reversed Internet domain name to begin their package names—for example, com.example.mypackage for a package named mypackage created by a programmer at example.com.
This information i have found at http://download.oracle.com/javase/tutorial/java/package/namingpkgs.html
Sun-Oracle 文档是这样说的:
This is what Sun-Oracle documentation says: