Java - 编写自己的类库

    许多程序代码我们先用到以后的开发中。比如:排序算法等。避免每次使用都要重新写一遍这些代码。如果可以像调用jdk一样的方法来调用我们自己写的代码块。那么该多好。

    万幸,有。废话不多说。talk is cheap,show me your code。

第一步:创建文件夹mylib,用于存放你自己的lib。    作者路径:D:\Java\jdk\mylib

第二步:设置你的CLASSPATH。

             我的电脑->属性->高级系统设置->环境变量

            

            选中CLASSPATH,点击编辑。加入你的mylib路径(;D:\Java\jdk\mylib)。(记住不要删除之前的路径!而是在后面追加!!!)

第三步:编辑你的.java文件。并放入你的mylib文件夹中。以SwingConsole.java为例lib中的位置(绝对路径为 D:\Java\jdk\mylib\net\mindview\util)。也就是包名。

           2、 类名SwingConsole和文件名SwingConsole.java相对应。

package net.mindview.util;

import javax.swing.*;
public class SwingConsole {
    public static void run (final JFrame jf,final int width ,final int height){
        SwingUtilities.invokeLater(new Runnable() {
            @Override
            public void run() {
                jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
                jf.setSize(width,height);
                jf.setVisible(true);
            }
        });
    }
}

这时候你可以高兴的在自己的代码中导入 

import net.mindview.util.SwingConsole;

然后你会悲剧的发现,它是灰体字。怎么肥事?!!搞事情??!!

别急,那是因为你没有编译SwingConsole.java。


第四步:打开命令行终端:使用 javac SwingConsole.java编辑生成SwingConsole.class文件。

这四步是生成了你自己的类库。但要使用,还需要导入到工程里。

下面以 intelliJ IDEA为例。导入自己的mylib。

        Project Structure->Libraries->第一行的第一个绿色加号->选择好你的类库所在地方->OK


    成功之后会发现External Library中多了一行mylib


    完成

测试:在自己的代码中调用自己的类库

package swingexample;
import net.mindview.util.SwingConsole;
import javax.swing.*;
import java.util.concurrent.TimeUnit;
public class HelloSwing {
    public JFrame jframe;
    public JLabel jlabel;
    public HelloSwing(){
        jframe =new JFrame("Hello JFrame");
        jlabel =new JLabel("my Label");
        jlabel.setVisible(true);
        jframe.add(jlabel);
    }
    public static void main(String[] args)throws Exception{
        final HelloSwing helloSwing =new HelloSwing();
        TimeUnit.SECONDS.sleep(1);
        SwingConsole.run(helloSwing.jframe,300,100);
    }
}

就像使用JDK中的库一样,需要import语句导入。

    import net.mindview.util.SwingConsole;

运行成功。



第一次写博客,因为技术有限,难免有漏洞,请大家多多指点。

猜你喜欢

转载自blog.csdn.net/m0_37128231/article/details/80718264