![Java项目驱动开发教程](https://wfqqreader-1252317822.image.myqcloud.com/cover/266/52843266/b_52843266.jpg)
上QQ阅读APP看书,第一时间看更新
1.4 Java带包类的编译和运行
包声明的关键字为package。在Java中,可以将相同的类放到不同的包中加以区分。同时,package包声明语句还可以进行基本的权限控制。
1.4.1 修改HelloWorld.java的源代码
修改HelloWorld.java的源代码,在第一句添加package关键字声明的包。
【文件1.2】 HelloWorld1.java
![](https://epubservercos.yuewen.com/E43DD5/31398662104176806/epubprivate/OEBPS/Images/Figure-P20_34270.jpg?sign=1739084191-IIIIkV2USRyCIdtyR85Eg2sNvd4AE8hJ-0-e58ca24b3cca154998436be3d8e24341)
第1行为新添加的包声明语句,后面通过点(.)声明带有层次的包,如cn.oracle(在cn包下的oracle子包)。
1.4.2 通过javac命令重新编译
javac命令拥有一个参数-d <目录>,可以直接将包声明语句编译成目录。
D:\java>javac -d . HelloWorld.java
-d参数后面的点(.)为当前目录,即将HelloWorld.java源文件带包名直接编译到当前目录下,编译以后的文件名如图1-11所示。
![](https://epubservercos.yuewen.com/E43DD5/31398662104176806/epubprivate/OEBPS/Images/Figure-P20_34274.jpg?sign=1739084191-L4emZoX518vGQKZhom9SG5pBMlWUAlCF-0-f81e488dc22241604f23a16f052af6eb)
图1-11
在cn目录下有一个oracle目录,oracle目录下有HelloWorld1.class源文件。使用package声明的包最终将编译成文件夹。其实也可以直接将包声明语句理解为目录或文件夹,只要便于记忆即可(记住,拥有自己独特的学习和记忆方法是成功的关键)。
1.4.3 通过java命令运行有包声明的类
在使用javac -d <目录>编译成功以后,编译的目录(源代码所在的目录)叫源代码目录。编译后的目录叫classpath目录(存放所有*.class的目录)。我们不能直接进入cn/oracle目录中去运行一个Java程序。注意:只能在classpath的根目录(D:/java)下执行Java运行命令。
运行Java程序:
D:\a>java cn.oracle.HelloWorld1 HelloWorld
注意:在创建Java源文件时,通过“我的电脑→查看→文件→选项”操作,将“隐藏已知文件类型的扩展名”选项取消,如图1-12所示。
![](https://epubservercos.yuewen.com/E43DD5/31398662104176806/epubprivate/OEBPS/Images/Figure-P21_1007.jpg?sign=1739084191-EV7nrrYlfxG12I5unwlqwodXDG1DdYRI-0-afa2ec8356e19398f7beda43a55a4894)
图1-12