反向域名对于java包结构有什么意义

2022-08-31 23:56:02

为什么我们使用反向域名,如com.something。或 org.something。Java软件包的结构?我知道这会带来某种独特性,但我们为什么需要这种独特性呢?


答案 1

关于我们为什么这样做:想象一下你有两个重要的包,一个会计包和一个图形包。如果按“直线”顺序指定这些内容:

accounting.mycompany.org
graphics.mycompany.org

然后它意味着有一个主要包,其子部分是 for ,该包的子部分称为您实际使用的包。但是,您需要这样:accountingmycompanyorg

org.mycompany.accounting
org.mycompany.graphics

这更有意义。在组织()的所有软件包中,您特别关注它,它有两个子软件包,即和 1。orgmycompanyaccountinggraphics


答案 2

全局唯一的包名称可避免来自不同源的库之间的命名冲突。而不是创建一个新的全球名称中央数据库,而是使用域名注册局。来自 JLS:

建议的生成唯一包名称的约定只是一种在现有的、广为人知的唯一名称注册表之上搭载包命名约定的方法,而不必为包名称创建单独的注册表。