What is the suggested way to name Java packages?(推荐的命名Java包的方式是什么?)
问题描述
我见过很多像com.mycompany.someapp
这样的例子。似乎是领域的反面。这对我来说实际上是有意义的。
但归根结底,这真的很重要吗?我们是一家小商店,所以我们可能看不到正确的域名命名的好处。
那么,将其命名为与域匹配的做法好吗?如果是,为什么?
推荐答案
摘自安德鲁评论中Naming a Package (Java Tutorial)的链接:(我声称以下内容没有原创性或所有权)。
命名包
随着全世界的程序员使用Java编程语言编写类和接口,许多程序员很可能会为不同的类型使用相同的名称。事实上,前面的示例就是这样做的:它定义了一个Rectangle类,而在java.awt包中已经有一个Rectangle类。尽管如此,如果两个类位于不同的包中,则编译器允许它们具有相同的名称。每个矩形类的完全限定名称包括包名。也就是说,图形包中矩形类的全限定名为Graphics.Rectang.,而java.awt包中矩形类的全限定名为java.awt.Rectang.
这很好用,除非两个独立的程序员为他们的包使用相同的名称。如何防止此问题?
命名约定
包名全部小写以避免与类或接口的名称冲突。
公司使用[他们的]颠倒的Internet域名作为其包名称的开头,例如,由Example.com的程序员创建的名为mypackage的包的名称为com.example.mypackage。
名称发生在单个公司内的冲突需要在该公司内按惯例处理,方法可能是在公司名称后包括区域或项目名称(例如,com.example.Region.mypackage)。
/li>Java语言本身的包以Java开头。或javax。
在某些情况下,Internet域名可能不是有效的包名。如果域名包含连字符或其他特殊字符,如果包名以非法用作Java名称开头的数字或其他字符开头,或者如果包名包含保留的Java关键字,如"int",则可能会发生这种情况。在这种情况下,建议的惯例是添加下划线。例如:
Legalizing Package Names Domain Name Package Name Prefix hyphenated-name.example.org org.example.hyphenated_name example.int int_.example 123name.example.com com.example._123name
快乐编码。
这篇关于推荐的命名Java包的方式是什么?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:推荐的命名Java包的方式是什么?
基础教程推荐
- 如何在不安装整个 WTP 包的情况下将 Tomcat 8 添加到 Eclipse Kepler 2022-01-01
- 首次使用 Hadoop,MapReduce Job 不运行 Reduce Phase 2022-01-01
- 由于对所需库 rt.jar 的限制,对类的访问限制? 2022-01-01
- Spring Boot Freemarker从2.2.0升级失败 2022-01-01
- 在螺旋中写一个字符串 2022-01-01
- 如何使用 Eclipse 检查调试符号状态? 2022-01-01
- 如何强制对超级方法进行多态调用? 2022-01-01
- 如何对 HashSet 进行排序? 2022-01-01
- 如何使用 Stream 在集合中拆分奇数和偶数以及两者的总和 2022-01-01
- Java 中保存最后 N 个元素的大小受限队列 2022-01-01