• Java中如何使封装自己的类,建立并使用自己的类库?


    转自:http://blog.csdn.net/luoweifu/article/details/7281494

    随着自己的编程经历的积累会发现往往自己在一些项目中写的类在别的项目中也会有多次用到。你肯定会想:如何自己的写的一些常用的类积累起来,生成自己的类库?如果是这样的话,很庆幸,你遇到通道中人了,因为我也是这样做的。下面就介绍一下我是怎么做的吧

    一、先来明白一下关于classpath和path的概念

    path是java中用来进行编译和运行的程序所在的路径,而classpath是类所在的路径。安装JDK之后,你应当设置好path和classpath路径。现在假设你JDK是安装在D:ITJDK6.0java(TM) SE Development Kit下(因为我自己的是安装在此目录下),那么你要设置的path路径就是这个路径下的bin文件夹,即D:ITJDK6.0java(TM) SE Development Kitin,因为bin文件夹下里面有javac.exe和java.exe(就是java中用来进行编译和运行的程序)。设置的方法如下:

    1.打开“我的电脑高级环境变量”,如果是win7,则是:““计算机属性系统属性高级环境变量”,打开如图一,

    图一

    双击“系统变量”下的path,把D:ITJDK6.0java(TM) SE Development Kit设置进去,如图二

    图二

    打开命令提示符,输入javac,如果有一连串的文字,则说明设置成功。顺便说一下常用的命令提示符:javac 编译java文件,java运行java文件,java –version查询JDK的版本,包路径+“-cvf”+ className.java 打成Jar包,

    2.接下来是接着设置classpath,假设你的java文件是在E:java文件夹,则可这样设置:如图三,后面有一点表示当前路径,这样的话你可以再任何路径下用javac编译java文件。

    图三

    3.如果你现在又一个打包好的jar文件(如何达成jar包后面会讲),现在要使用jar包里的类,则需要将jar包设置成classpath变量。假设你有一个自己tools.jar包,放在D:ITJDK6.0java(TM) SE Development KitmyJar,则需要将D:ITJDK6.0java(TM) SE Development KitmyJar ools.jar设置到classpath中,如图四

    图四

    此时,你就可以在类中引用tools.jar中的类了,只需要在类中将其引入。以上操作在win7可能还出问题,还需要设置用户变量里的classpath(为什么会这样,我也不值得,希望共同探讨)。注意在图一中是有“Adiministrator用户变量”和“系统变量的”,这是只需按照图四将D:ITJDK6.0java(TM) SE Development KitmyJar ools.jar设置到用户变量里的classpath中去就行。

          二、在Eclipse中如何打成jar包?生自己的类库

    Eclipse和MyEclipse是目前最流行的java集成开发环境,如果你用的是其他的开发工具,建议你尝试着用一下Eclipse进行开发,因为它功能很强大,很好用。下面就介绍一下如何在Eclipse下将自己写好的类打成jar包,生成自己的类库。

    假设当前的文档结构这样的:

    图五

    右击项目文件Tool,选择Export,打开对话框,选择JavaJAR file后下一步,如果你只需要打包cn.edu.jxau.tools下的类,只需要选择该类即可,如图六

    图六

    在JAR file中选择要导出的路径和文件名,如图图七

    图七

    点击“下一步”、“下一步”,然后Main class中选择包含main函数(如果有面函数的话),然后点击完成(finish)。

    三、为自己的类生成注释文档,即生成javadoc文件。

    第二的介绍可以生成自己的类库了。但是时间久自己写的类和方法就会忘记,生成一个高质量的注释文档就很有必要的。庆幸的是Java自己就能很好的完成这一功能,能帮我们生成类似API的文档,即javadoc文档。下面介绍一下在Eclipse中如何生成javadoc文档:

    1、对类进行注释

    在生成javadoc文档之前首先要对类进行注释。注释有如下三种方式:

    a,//注释内容;b,/*注释内容*/;(快捷键:选中要注释的内容后按“shift+Ctrl+/”,取消注释是“shift+Ctrl+”)

    c,

    /**

    *注释内容。

    */

    其中只有c方式在生成javadoc中才有用。以我自己写的ArrayQueue类为例说明一下几种注释,只需要对public方法和变量进行注释,因为只有public类型才能被其他类访问。

    (1)、在类前面注释类说明和创作者,如

    /**

     * 文件的复制,字符串输入到文件中,将文件内容打印到控制台

     *

     * @author xiaoxu

     *

     */

    (2)、在public方法前面注释方法的说明,如public static String readFile(File file)方法注释:

    /**

        * 读取一个文件里的内容

        *

        * @param file

        *            要读的文件

        * @return 返回读取文件的字符串

     */

    (3)、注释对public变量进行注释,假设有一表示窗口宽度的变量WIDTH,如下注释

    /**

        * 主窗口的宽度

        */

       public static final int WIDTH = 1000;

    部分结果如下

    图八(1)

    2、用Eclipse生成javadoc文档

    选中要生成javadoc文档的项目,再在菜单栏中的选择菜projectGenerate Javadoc…。打开对话框后“javadoc command”的默认路径是C:jdkinjavadoc.exe,如果没有该路径就自己添加,找到自己安装JDK的根目录下的binjavadoc.exe,如下图

     

    图8(2)

    选择要生成javadoc的文件,然后选择导出的路径,一般选择默认的项目下的doc文件夹,改成其他路径可能会有错。如下:

    图8(3)

    之后就一路next,最后点finish就OK了。在这期间可能会出现警告,如下图

    图8(4)

    选择“Yes To All”。

    四、如何使用自己创建的类库?

    通过一、二、三,已经能够创建自己的类库了。下面说明一下如何使用自己的类库。

    方法一:

    假设现在要创建一个项目Test,里面要用到自己类库tools.jar中的S类。新建一个类Test.java,里面的main方法是这样的:

    public static void main(String[] args) {

       S.pl("java");  //S类中的S.pl()封装了System.out.println(obj);

    }

    这时Eclipse会报错,会说S这个类不存在,是否要创建这个类。这是因为默认的JRE并不存在tools.jar这个包,如图八。

    图八(5)

    那么如何将这个包夹道默认的JRE System Library中呢?

    选择Window Preferences,打开对话框,选择JavaInstalled JREs,如图九

    图九

    接下来,点击“Add”添加一个新的JRE,选择Standard VM后点击下一步,在JRE home中点击Directory选择JDK按钮路径下的jre文件夹(即包含rt.jar的文件夹,rt.jar是jdk的根文件夹,里面包含了所有的基本类)如图,然后点击“Add External JARs”选择生成好的tools.jar文件(最好先别tools.jar放在一个比较访问,比较安全的文件夹内,我的是直接放在JDK安装路径下的D:ITJDK6.0java(TM) SE Development KitmyJar里),如图十

    图十

    点击finish。

       然后,在Test项目中将默认的JRE System Library换成刚刚配置好的JRE,右击Test选择Build Path选择Configure Build Path…,打开对话框,将原有的JRE Remove掉,然后Add Library,选择JRE System Library,下一步,点击“Installed JREs”后选择刚刚配置好的那个JRE,点击finish。

    现在就配置好了。此时的JRE就能看到tools.jar文件,如下图:

    图十一

    方法二:

    将刚刚生成的自己的类库Tool.jar直接拷贝到JDK和JRE的安装目录中的jre/lib/ext/中,这时候我们需要重启一下Eclipse,这样才能将刚才的那个包加载进自动生成的系统库中。

    方法三:

    当然除以上方法之外,也可以直接在单个项目中通过"bulid path"导入External Jar,额外的jar包。此方法类似于更换新的JRE,自己去琢磨吧!哈哈……

       当然这只是我自己个人琢磨出来的方法,可能还有更好的方法。对这方面的知识我还需要进一步的学习,如果有对此方面感兴趣的朋友,欢迎加入我,互相学习,我的联系方法是:

    email:luoweifu@126.com;

  • 相关阅读:
    设计模式之美学习-设计原则-面向对象基本概念(一)
    redis-分布式锁-设计与使用
    linux常用命令记录(一)
    redis-布隆过滤器使用
    jdk源码阅读-ConcurrentLinkedQueue(一)
    支付宝支付接口-app支付沙箱环境
    RocketMQ-安装
    支付宝支付接口-运行支付宝demo
    elasticsearch-文档-父子文档(十一)
    RTMPdump 源代码分析 1: main()函数
  • 原文地址:https://www.cnblogs.com/x_wukong/p/3889179.html
Copyright © 2020-2023  润新知