package cn.test.lxh 每一个都是一级文件夹
-d 表示生成目录,根据包的定义生成
. 表示在当前所在的路径下生成
编译:javac -d . Test.java
运行:java cn.test.lxh.Test
有包的类执行的时候一定要加上包名称,不要进入到包里面执行。
从任何实际的开发来讲,所有的类一定要放在一个包之中,没有包的类是绝对不会存在的
利用包可以实现程序的分割,但是一定会存在包之间互相访问的情况,这就称为包的导入操作。
如果想要导入包,使用import时要写上类的完整路径:包.类名称 cn.test.lxh.Test
自动编译:javac -d .java
在进行包中类定义的时候,如果一个类希望被外部的包所访问,那么一定要将其定义为public class
导入:import cn.test.info. 文件夹里全导入
导入不同包的同名类
比如一个为cn.test.info.Hello,则cn.test.info.Hello hello=new cn.test.info.Hello();
写上完整名称
关于jar文件
-c:创建一个新的压缩文档
-f:指定文件名称
-v:把详细的归档过程进行输出
打包过程:
1.将类进行打包编译 javac -d . Hello.java(里面有package生成cn文件夹)
2.将生成的*.class文件(带有包)利用jar命令打成jar文件 jar -cvf my.jar cn(把cn文件夹整个打jar包)
cn文件夹可以干掉了
3.*.jar文件其实是一个个独立的目录,如果想使用jar文件,那么必须要配置classpath,classpath之中有一个必须配置的就是当前目录查找"."
SET CLASSPATH=.;d:\myproject\my.jar
java cn.test.msg.Test(引用了jar中的hello.java)