![深入浅出Java编程](https://wfqqreader-1252317822.image.myqcloud.com/cover/969/44509969/b_44509969.jpg)
上QQ阅读APP看书,第一时间看更新
6.1 Java包结构
package关键字是包声明语句。一个类如果存在package关键字,则这个关键字必须在类的第一句,注释除外。包声明的语法为“package cn.oracle;”,即以package开始,以;(分号)结束。正如前面所示,cn为第一层包,oracle为第二层包,即cn.oracle为完整的包名。在声明包名时,一般为公司倒置的网站名称。例如,某个公司的网站为http://www.abc.com,则这个公司声明包应该为“package com.abc;”。
如果一个类拥有包名。正像前面所讲到的那样,在使用javac编译时,应该添加-d参数,同时编译出包的目录结构。以下是一个带有包的类:
【文件6.1】Hello.java
![](https://epubservercos.yuewen.com/A51239/23721640201031406/epubprivate/OEBPS/Images/Figure-P63_5360.jpg?sign=1738864780-NsPuOXppAKnGQHHHSoSkoKAv1kNkcXw5-0-3f581e751814bd9d96ffe43ec54e4d01)
现在使用javac -d . Hello.java的方式来编译上面的源代码:
1. D:\java>javac -d . Hello.java
在编译好的目录下,即可看到同时编译的以包命名的目录,如图6-1所示。
![](https://epubservercos.yuewen.com/A51239/23721640201031406/epubprivate/OEBPS/Images/Figure-P64_5389.jpg?sign=1738864780-jjcBnHrf793P7wGQqsYS9coM1lBjXqaP-0-2521238f741e43441ddec42e64386a18)
图6-1
现在使用java命令运行已经编译好的类,此时应该使用“java完整包名.类名”执行。
1. D:\java>java com.oracle.Hello 2. Hello
建议在声明类时至少应该有两层包。第一层表示国家或者组织。第二层表示公司名称。第三层表示模块或者功能。
在Eclipse中可以独立地创建一个包,如图6-2所示。
![](https://epubservercos.yuewen.com/A51239/23721640201031406/epubprivate/OEBPS/Images/Figure-P64_5413.jpg?sign=1738864780-wXiL4vLKOPDhM0IjdcQTDsZ1edNnBcat-0-6281bd267f56cc7ec14fc1af987bd179)
图6-2
也可以在创建类时直接指定包名,如图6-3所示。
![](https://epubservercos.yuewen.com/A51239/23721640201031406/epubprivate/OEBPS/Images/Figure-P64_5424.jpg?sign=1738864780-d1KhdyV3cizL3E69oYEMsEZr59vB34lQ-0-c56f3236491c786e6f74269314a77704)
图6-3