原文http://www.programcreek.com/2011/07/build-a-java-library-for-yourself/

原文和翻译都只是参考,如有不对,欢迎指正。

代码复用是软件开发中一个很重要的因素,把常用的函数放在一起封装成一个库,是一个很好的想法。无论什么时候需要用到,只需调用一下就可以了。对于使用Java来说,创建一个这样的库是很简单的。这里有一个简单的例子,使用Eclipse来创建一个数学库,这个库只有一个"add"方法用于演示。

步骤1、创建一个名为"MyMath"的"Java Project",然后创建一个名为"Simple"的类,并在这个类里添加一个静态方法"add"。
包结构如图所示:

Simple.java

 public class Simple{
public static int add(int a,int b){
return a+b;
}
}

步骤2、导出为一个 jar文件。

在项目上右键,选择"export",会显示如下窗口:

点击"Next",跟着向导填写相应的信息,会生成一个jar文件,这个就是我们的库。

步骤3、使用库。
在要使用库的项目上右键,然后选择"Build Path"->"Add External Archives",跟着向导把库文件添加到项目里。
现在你可以开始调用库里的函数了。
Main.java

 public class Main{
public static void main(String[] args){
System.out.println(Simple.add(1,2));
}
}

最后重要的一点,要经常更新和优化库,并且写好文档,这是非常重要的。如果没有为库写一个良好的文档,你自己可能都忘了这个库是干嘛用的。包名要起得能够见名知意,说明这些类和方法是干嘛用的。比如说你可以模仿标准的Java库的命名方式来为自己的第一层包名命名:programcreek.util,programcreek.io,programcreek.math,programcreek.text等等。有了库你的特定领域知识就可以被其他人利用,除此之外,在你开始编程之前,要首先搜索一下是否有人已经实现了你想要做的,要善于利用这个行业里成千上万的聪明程序员的力量。

如何构建你自己的Java库【翻译】的更多相关文章

  1. Gradle 1.12用户指南翻译——第46章. Java 库发布插件

    本文由CSDN博客貌似掉线翻译,其他章节的翻译请参见: http://blog.csdn.net/column/details/gradle-translation.html 翻译项目请关注Githu ...

  2. [Java,JavaEE] 最常用的Java库一览

    引用自:http://www.importnew.com/7530.html 本文由 ImportNew - 邢 敏 翻译自 programcreek.欢迎加入Java小组.转载请参见文章末尾的要求. ...

  3. 最常用的Java库一览

    本文由 ImportNew - 邢 敏 翻译自 programcreek.欢迎加入翻译小组.转载请见文末要求. 写在前面: 1) 本文列出的名单是根据我自己的调查,并结合个人的经验.有可能是它们不恰恰 ...

  4. 最常用的Java库一览(13年的文章)

    来源于:http://www.importnew.com/7530.html 本文由 ImportNew - 邢 敏 翻译自 programcreek.欢迎加入翻译小组.转载请见文末要求. 写在前面: ...

  5. 我把自己的java库发布到了maven中央仓库,从此可以像Jackson、Spring的jar一样使用它了

    欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...

  6. 使用Jitpack发布开源Java库

    原文:使用Jitpack发布开源Java库 | Stars-One的杂货小窝 很久之前也写过一篇使用Jitpack发布Android开源库的文章,详见Android开发--发布第三方库到JitPack ...

  7. 初涉java库--ArrayList

    我的车就差一个轮子啦,造好轮子,我就飞上天与太阳肩并肩啦,想想都激动.什么你要自己造轮子,是不是傻,商店里不都是别人造好的吗,又好又方便,只需一点money,你没有money,那你只能做个安静的美男子 ...

  8. Java 库:为 Java 程序员而生的 10 + 最佳库

    众所周知,Java 的生态环境相当庞大,包含了数量相当可观的官方及第三方库.利用这些库,可以解决在用 Java 开发时遇到的各类问题,让开发效率得到显著提升. 举些例子,最常用的官方库有 java.l ...

  9. 在Maven Central发布中文API的Java库

    原址: https://zhuanlan.zhihu.com/p/28024364 相关问题: 哪些Java库有中文命名的API? 且记下随想. 之前没有发布过, 看了SO上的推荐:Publish a ...

随机推荐

  1. boost安装

    虽然很多Boost组件都只有头文件,不需要编译,但是有些Boost组件,如program_options.regex等还是需要编译生成库的.考虑到目前的程序需要用到program_options.re ...

  2. js 截取某个字符前面或者后面的字符串

    /* string 字符串; str 指定字符; split(),用于把一个字符串分割成字符串数组; split(str)[0],读取数组中索引为0的值(第一个值),所有数组索引默认从0开始; */ ...

  3. define的用法

    define的用法小结 define的用法只是一种纯粹的替换功能,宏定义的替换是预处理器处理的替换. 一:简单的宏定义用法 格式:#define 标识符 替换内容 替换的内容可以是数字,字符,字符串, ...

  4. 登录超时自动退出,计算时间差-b

    // 此方法适用于所有被创建过的controller,且当前controller生命周期存在,如有错误的地方望大神斧正 //  说一下我们的需求和实现原理,需求:在点击home键退出但没有滑飞它,5分 ...

  5. AvalonDock 2.0+Caliburn.Micro+MahApps.Metro实现Metro风格插件式系统(菜单篇)

    这章主要说插件的菜单,可以说菜单是最核心的部分,前面我们已经实现了Document添加,现在主要就是生成具有层级关系的菜单,以及把菜单跟我们自定义的Document关联起来,也就是MenuPart-& ...

  6. java集合类(四)About Set

    接上篇:java集合类(三)About Iterator & Vector(Stack) 之前,在比较java常见集合类的时候,就了解到一点有关Set的特性.实现类及其要求等,读者可以去温习下 ...

  7. cookieContainer应用

    PublicSharedFunctionGetCookiesSetByPage(ByVal strUrl AsString,ByVal cookieToProvide AsString)AsIEnum ...

  8. [转载]Windows 7 IIS (HTTP Error 500.21 - Internal Server Error)解决

    今天在测试网站的时候,在浏览器中输入http://localhost/时,发生如下错误: HTTP Error 500.21 - Internal Server Error Handler " ...

  9. Taxi Trip Time Winners' Interview: 3rd place, BlueTaxi

    Taxi Trip Time Winners' Interview: 3rd place, BlueTaxi This spring, Kaggle hosted two competitions w ...

  10. 01-04-02【Nhibernate (版本3.3.1.4000) 出入江湖】HQL查询

    public IList<Customer> GetAllHql() { IList<Customer> result = null; ISession session = _ ...