java中package的使用与classpath的设置

今天读了JAVA2核心技术第1卷:基础知识中的第4章,对其中的package的使用有些感悟与理解。

写了两个类PackageTest、Employee。PackageTest在默认包,Employee在com.horstmann.corejava包中。PackageTest中引用Employee类。

基路径F:/JavaProgram/packagetest。

F:/

     JavaProgram/

                          packagetest/

                                             com/

                                                    horstmann/

                                                                      corejava/

                                                                                     Employee.java

                                                                                     Employee.class

                                              PackageTest.java

以上是目录路径(虽然难看,能看懂就行了)

在命令行中敲入:

F:/JavaProgram/packagetest>javac com/horstmann/corejava/Employee.java

F:/JavaProgram/packagetest>javac packagetest.java

F:/JavaProgram/packagetest>java PackageTest

运行成功了。

关于classpath的讲解:

类路径所列出的目录和归档文件是搜寻类的起始点,下面看一个类路径示例:

/home/user/classdir;.;/home/user/archives/archive.jar

假设解释器要搜寻com.horstmann.corejava.Employee类文件。他首先要查看存储在jre/lib和jre/lib/ext目录下的归档文件中所存放的系统类文件。显然,在那里找不到相应的类文件,然后在查看classpath。于是查看:

/home/user/classdir/com/horstmann/corejava/Employee.class(带有package com.horstmann.corejava)

/com/horstmann/corejava/Employee.class

/home/user/archives/archive.jar中的com/horstmann/corejava/Employee.class

这就表示我们在保存java文件时,要将编译的class文件放入与包名对应的目录中。因为编译器是根据包名到相应的路径中查找.class文件。

当然改类必须是在这个包内,否则即使是取Employee.class名,也不会编译通过。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值