![深入浅出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=1739095462-IKS4XW8MDxAkuvPGwUtRAVESQPNsUEGp-0-16938e31fb7a86d3fac829778698dfde)
现在使用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=1739095462-CeR1NUecWcOFnDPHHRhZ2sFy67EMIJjW-0-a97c579252929cc6461f8605d9c24eb5)
图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=1739095462-xziiwlZJ1Oz1UhZ0z1wUAeUE4Kck5G7b-0-ebbed5275c32c9ab71ad3f38f59e25c2)
图6-2
也可以在创建类时直接指定包名,如图6-3所示。
![](https://epubservercos.yuewen.com/A51239/23721640201031406/epubprivate/OEBPS/Images/Figure-P64_5424.jpg?sign=1739095462-BV9skUInQxbcV3E3WNXzT85Bwpj5h3OV-0-a43be9274f33cd2e2c4da71a2e33ec6e)
图6-3