Java包(package)的实例

1. 首先是没有引入包的源码

public class FighterPlane {
	String name;
	int missileNum;
	void fire() {
		if(missileNum > 0) {
			System.out.println("now fire a missile!");
			missileNum -= 1;
		}
		else {
			System.out.println("No missile left!");
			
		}
	}
}

public class RunPlane {
		public static void main(String args[]) {
			FighterPlane fp = new FighterPlane();
			fp.name = "苏35";
			fp.missileNum = 6;
			fp.fire();
		}
}

虽然没有引入包,但这是包的一种特殊存在形式----默认包

2. 引入包

(1)目录形式包

建立如图文件夹

建立文件夹
将FighterPlane.java存在com.resource文件夹中,将RunPlane.java存放到com.run文件夹中,deliver文件夹用于存放包文件.

修改源代码

FighterPlane.java文件:

package com.resource;
public class FighterPlane
{
   public String name;
   public int missileNum;
   public void fire(){
       if (missileNum>0){
          System.out.println("now fire a missile !");
		  missileNum -= 1; 
       }
       else{
          System.out.println("No missile left !");
       }
   }   
}


进入4.16目录,执行命令行

javac -d .deliver com
esourdeFighterPlane.java

在deliver文件夹下出现com、resource的子目录,看作包。

RunPlane.java文件:

package com.run;
import com.resource.*;
public class RunPlane
{
	public static void main(String args[]){
       FighterPlane fp = new FighterPlane();
	   fp.name = "苏35";
	   fp.missileNum = 6;
	   fp.fire();
   }
};

进入4.16目录,编译,执行命令行

javac -d .deliver -classpath .deliver com
esourdeRunPlane.java

执行RunPlane.

java  -classpath .deliver com.run.RunPlane

目录形式包创建成功

(2)jar文件包

将先前的包通过如下命令压缩成一个文件

Jar cvf first.jar -C deliver .

jar为JDK工具,c(create,创建一个新文件);v(生成详细输出到标准输出上);f(指定存档文件名,也就是后面的first,jar);-C的作用是将指定目录下的所有包进行打包;“deliver .”是你将其下所有文件压缩到first.jar当中。

有了first.jar,就可以采用如下方式执行程序,假设当前路径为“D:”下

java -classpath d:4.16first.jar com.run.RunPlane

jar包创建成功

原文地址:https://www.cnblogs.com/myzhibei/p/12890565.html