Package 与 jar
1. 导出 package
包, 即软件包, 可以理解成文件夹.
使用关键字 package 包名 来使用, 如: package test;
编译方法:
-d 参数: 该参数的作用是依照包名在指定目录下生成相应的文件夹, 并把生成的目标文件放在该文件夹下.
打包后, 就在当前目录下生成了一个目录树: ./com/test/Test.class, 同时这个类的命名为 "包名"+" . "+"类名", 即: com.test.Test, 也就是说, 使用 java 命令执行时, 要写成:
在非导入的情况下, 调用类的原则如下:(导入的情况见下面一节)
如果两个类在同一个包,调用的时候不需要写全名;
如果两个类不在一个包,调用的时候需要写全名;
包命名规范:
所有字母小写
域名倒过来写,如:com.baidu
2. 导入 package
刚已经知道, 当跨包使用一个类的时候, 要写类的全名,如此太麻烦,可以通过导入包的方法来一次性解决,不再需要写类的全名,就像是在同一个包内一样.
使用 import 关键字,如: import com.test.Test
导入后,在被导入的类中使用导入的类不需要再写全名.
3. 权限总结
4. -cp 参数
当我们实际开发时, 常常会建立 classes、src、lib 三个文件夹来建立文件管理.
classes, class 目录, 我们编译 *.java 文件生成的 *.class 文件都放在这里
src, 源文件目录, 即我们的 *.java 文件
lib, jar 包都放这里
当在 src 文件夹下写好源代码后, 通过 -d 参数指定生成的 *.class 文件放在 classes 目录下, 通过 -cp(ClassPath) 参数指定依赖库目录, -cp 可以除了指定目录外还可以指定 jar 包.
如, 现在把刚才的 Test.java 放到 src 目录, 然后重新生成 *.class 文件.
5. JAR 包
参考网文: http://blog.chinaunix.net/uid-692788-id-2681136.html
JAR 包是 Java 中所特有一种压缩文档, 它是由 JDK ~\bin\jar.exe 命令生成, 该命令将指定目录下的 package 压缩成 jar 包, 其实就可以把它理解为 .zip 包, 当然也是有区别的, JAR 包中有一个 META-INF\MANIFEST.MF 文件, 当你生成 JAR 包时, 它会自动生成.
根据上一节所说, 我们的 class 文件都在 classes 目录下, jar 目录生成在 lib 目录下, 所以:
Last updated