前言

  Java提供了jar包的机制,使得已经开发好了的类能够顺利的被将来的工程所复用。

  本章主要讲解如何使用这种工具。

包的作用

  包能够将不同功用的类组织起来,从而确保类名的唯一性。

  为了保证包名的唯一性,Sun公司建议将包发布公司的因特网域名的逆序作为包含此包的目录,并且不同的项目使用不同的子包。

  包的结构一般是带有各种.class文件的多层目录。

  但在实际项目中,一般使用的是包的压缩格式 - jar包。

打包方法

  下面给出一个完整的封装jar包的例子。

  1. 创建一个新的java工程。

  2. 在包中添加各种类。记得在new一个class的时候,在创建对话框中输入相应的包名:

  

  2. 可以看到Eclipse的源代码目录结构发生了变化 - 增加了一级包目录并在包目录下多了新的类文件(A.class为本文测试类):

  

  3. 编写好你的类。我的测试用例代码如下:

 package fangmeng.com.cnblogs.www;

 public class A {

     // 定义一个静态常量域PI
public static final double PI = 3.1415926; // 再定义一个静态方法显示PI
public static void showPI() {
System.out.println(PI);
}
}

  4. 右键包名 -> export ,然后在新的对话框中选择Jar File

  

  5. 在弹出的对话框下方,输入输出jar包名:

  

  6. 然后一直"下一步"至完成即可。新生成的Jar包的路径和文件名就是上一步所指定的。

使用包的方法

  1. 右键项目 -> Properties,对话框左边Build Path,右边Libraries,如下图所示:

  

  2. 点击右边的Add External JARS,选择刚才生成的Jar包:

  

  3. 可以看到工程目录下多了新导入的Jar包及其内部所包含的类,配置文件等:

  

  4. 在源代码中首部加入相应import语句既能导入指定的Java包,类,从而在当前工程中复用。测试代码如下:

 package test;

 // 导入Jar包内的指定子包
import fangmeng.com.cnblogs.www.*; public class Test {
public static void main(String[] args){ // 直接使用Jar包里面的方法
A.showPI();
}
}

  5. 执行结果正常,如下图:

  

小结

  本文仅仅给出一个最经典常用的封装使用Jar包的方法。

  在实际项目封装Jar包的时候,还需往Jar包中添加资源,编写配置文件,设定主函数等,这样才是一个正规,合格的Jar包。

java 的复用工具 - jar包的更多相关文章

  1. Redis(Windows安装方法与Java调用实例 & 配置文件参数说明 & Java使用Redis所用Jar包 & Redis与Memcached区别 & redis-cli.exe命令及示例)

    Windows下Redis的安装使用 0.前言 因为是初次使用,所以是在windows下进行安装和使用,参考了几篇博客,下面整理一下 1.安装Redis 官方网站:http://redis.io/ 官 ...

  2. 分享:根据webservice WSDL地址自动生成java调用代码及JAR包

    分享:根据webservice WSDL地址自动生成java调用代码及JAR包使用步骤:一.安装java 并配置JAVA_HOME 及 path二.安装ANT 并配置ANT_HOME三.解压WsdlT ...

  3. java中最常用jar包的用途说明

    java中最常用jar包的用途说明,适合初学者 jar包 用途 axis.jar SOAP引擎包 commons-discovery-0.2.jar 用来发现.查找和实现可插入式接口,提供一些一般类实 ...

  4. Java中常见的jar包及其主要用途

    jar包        用途 axis.jar     SOAP引擎包 commons-discovery-0.2.jar     用来发现.查找和实现可插入式接口,提供一些一般类实例化.单件的生命周 ...

  5. Java学习-039-源码 jar 包的二次开发扩展实例(源码修改)

    最近在使用已有的一些 jar 包时,发现有些 jar 包中的一些方法无法满足自己的一些需求,例如返回固定的格式,字符串处理等等,因而需要对原有 jar 文件中对应的 class 文件进行二次开发扩展, ...

  6. 使用 DJ Java Decompiler 将整个jar包反编译成源文件

    使用 DJ Java Decompiler 将整个jar包反编译成源文件 所使用的软件是 DJ Java Decompiler 3.9. 下面是一个有用的参考文档,说明如何批量编译 http://ww ...

  7. Java项目导出为jar包+导出第三方jar包+使用命令行调用+传参

    Java项目导出为jar包+导出第三方jar包+使用命令行调用+传参 一.打包 情况1:不需要向程序传参数,并且程序没有使用第三方jar包 Eclipse上导出jar: 然后选择一个java文件作为入 ...

  8. 在java工程中导入jar包的注意事项

    在java工程中导入jar包后一定要bulid path,不然jar包不可以用.而在java web工程中导入jar包后可以不builld path,但最好builld path.

  9. Jar中的Java程序如何读取Jar包中的资源文件

    Jar中的Java程序如何读取Jar包中的资源文件 比如项目的组织结构如下(以idea中的项目为例): |-ProjectName |-.idea/  //这个目录是idea中项目的属性文件夹 |-s ...

随机推荐

  1. 批量插入使用SqlBulkCopy

    对于大量的数据插入,我们可以使用批量插入功能来提升性能,例如.

  2. cf卡中,wtmp文件较大,导致磁盘空间满了

    看了一下,有一个wtmp 和wtmp.1的文件非常大.wtmp记录的是机器注销.启动的信息.由此可见,机器长时间的不断重启,造成该日志记录超级大,把cf的空间给占满了. wtmp日志可以用who和la ...

  3. 基于TCP的通信 客户端

    #include <WINSOCK2.H> #include <stdio.h> // socket 套接字 #pragma comment (lib,"Ws2_32 ...

  4. HDU 3074 Multiply game(线段树)

    单点更新,更新时先除去 原来的数,因为有去摸,可以用乘上逆元代替. //================================================================ ...

  5. g++默认支持c++11标准的办法

    //第一种,直接包含在源程序文件中,如第一行代码所示 #pragma GCC diagnostic error "-std=c++11" #include <iostream ...

  6. 二模 (4)day2

    第一题: 题目大意:给出1~n的一个排列,统计该排列有多少个长度为奇数的连续子序列的中位数是b.中位数是指把所有元素从小到大排列后,位于中间的数. N<=100000 1.考虑到一个符合要求的连 ...

  7. Java longTime 和C#日期转换

    封装一下,可直接用. 以后碰到java的long time,直接使用DateTime dt=ConvertJavaDateTimeToNetTime(1207969641193);这样使用即可. 这串 ...

  8. 从原理上搞定编码(四)-- Base64编码

    开发者对Base64编码肯定很熟悉,是否对它有很清晰的认识就不一定了.实际上Base64已经简单到不能再简单了,如果对它的理解还是模棱两可实在不应该.大概介绍一下Base64的相关内容,花几分钟时间就 ...

  9. WP8.1 Study5:Data binding数据绑定

    一.数据绑定 最简单的编程UI控件的方法是写自己的数据来获取和设置控件的属性,e.g. , textBox1.Text = "Hello, world"; 但在复杂的应用程序,这样 ...

  10. Program A - 暴力求解

    Description   Write a program that finds and displays all pairs of 5-digit numbers that between them ...