Rumah  >  Artikel  >  Java  >  Java基础——关于jar包的知识

Java基础——关于jar包的知识

巴扎黑
巴扎黑asal
2017-06-26 11:34:371246semak imbas

在学习jar包之前,要先弄懂Java包,以及关于Java包的相关概念。

一、包

为了更好地组织类,Java提供了包机制。包是类的容器,用于分隔类名空间。如果没有指定包名,所有的示例都属于一个默认的无名包。

格式为:

package pkg1[.pkg2[.pkg3…]];

代码实例:

 1 /** 2 *@version 2017-06-17 3 *@author zhou 4 */ 5  6  7 package cn.com.zhouzhou;//包名一定要由小写字母组成 8 public class Lession1 { 9     public static void main(String[] args) {10         System.out.println("这是我创建的第一个在包下的文件");11         }12         }

注意事项:

1.程序中如果有package语句,该语句一定是源文件中的第一条可执行语句;

2.package语句的前面只能有注释或空行;

3.一个文件中最多只能有一条package语句;

4.包的名字有层次关系,各层之间以点分隔(上例中的“cn.com.zhouzhou”);

(图:演示)

 5.包层次必须与Java开发系统的文件系统结构相同;

6.通常包名中全部用小写字母;

7.当使用包说明时,程序中无需再引用(import)同一个包或该包的任何元素;

8.import语句只用来将其他包中的类引入当前名字空间中。而当前包总是处于当前名字空间中。

 

* 示例演示:

1)编译的时候用:(我的文件是存在E盘了)

e:\>javac -d . Lession1.java   // 可以生成对应的文件夹结构

2)执行的时候,要执行全类名

java cn.com.zhouzhou.Lession1

注意事项说明:

1.同一个源文件中的类,都在同一个包中,同一个包中的内容互相访问,不用导包;

2.导包的时候 以下两句;

import cn.com.zhouzhou.beans.*;

import cn.com.zhouzhou.beans.UserInfo;

这两句,只在编译的时候有后者稍快一点,在运行的时候没有任何区别

3.如果要设置classpath ,要设置到最外层的文件夹所在的目录上,比如:

package cn.com.zhouzhou;

set classpath=cn的所在的文件夹名称

4.对于父包和子包,在使用上没有任何关系,只要不在一个包中,引用的时候就必须导包;

5.以后在开发中,如果出现一个类名找不到的情况,主要以下原因:

1)类名写错了

2)包名错了

3)classpath 设置错了

6.对于 java.lang 包下的类,使用的时候可以不导包。

二、jar包

java中的jar文件 ,装的是 .class 文件。它是一种压缩,和zip兼容,被称为jar包。JDK提供的许多类,也是以jar包的形式提供的。

在用的时候呢,你的文件里有很多个类,把这些类和他们的目录一起压缩到一个文件中给别人,会显得更专业,有条理。别人拿到这个jar包之后,只要让他的classpath 的设置中包含这个jar文件,java虚拟机,在装载类的时候,就会自动解压这个jar文件,并将其当成目录,然后在目录中查找我们所要的类及类的包名和所对应的目录的结构。

 

那么如何创建一个Jar包呢?下面我将演示一下具体步骤:

1.需要打成jar包的文件

1 package cn.com.zhouzhou;//包名一定要由小写字母组成2 public class Lession2{3     public static void main(String[] args) {4         System.out.println("这是我要打jar包的文件");5         }6         }

2.编译

e:\>javac -d . Lession2.java

(d后面的点,点的两侧都要有空格)

3.打Jar包

jar -cvf myjarbao.jar cn

(生成名叫myjarbao.jar的文件;后面的cn不要忘记)

生成结果如下:

 

 

Atas ialah kandungan terperinci Java基础——关于jar包的知识. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn