快速业务通道

以简单的方式消除 Java 的冗长 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-17

以简单的方式消除 Java 的冗长

时间:2011-04-30 IBM Brian M. Carey

何为 Lombok?

Lombok 是一种 Java Archive (JAR) 文件,可用来消除 Java 代 码的冗长。

我们看这样一个例子,一个标准的 Java bean。一个典型的 Java bean 一般具有几个属 性。每个属性具有一个 accessor 和 mutator(getter 和 setter)。通常还会有一个 toString() 方法、一个 equals() 方法和一个 hashCode() 方法。

初看上去,其中 可预见的冗余就已经非常多了。如果每个属性都具有一个 getter 和 setter,并且通常如此 ,那么又何必详细说明呢?

让我们来看看 Lombok。为了消除代码行,Lombok 使用 注释来标识类和 Java 代码块。在前述的那个 Java bean 示例中,所有的 getter、setter 以及其他三个方法都是在编译时被暗示并包括进来的。

而且更好的是如果您使用的是 Eclipse 或 IBM® WebSphere® Studio Application Developer(如果还没用的话, 建议最好使用),您就可以将 Lombok 集成到 Java 项目并即刻获得开发时结果。换言之, Eclipse 编译器可以立即识别所暗指的 getters/setters,而其他 Java 代码则可引用这些 方法。

最直接的好处当然是代码行的减少,这真的很棒。并且,如果有一个特定的 getter 或 setter 需要特别的注意,那么您就不必为了找到这个特定的 getter 或 setter 而遍历数十行代码。代码也会更为简洁并且冗余也少了。

Lombok 还让您得以简化代 码的其他部分 — 不仅仅是 Java bean。比如,还可以减少 try/catch/finally 块内 以及同步方法内的冗余代码。

现在,我们来看看在您自己的开发环境中如何能实现上 述目的。

安装 Lombok

要进行安装,本文假设您使用的是 Eclipse 或 WebSphere Studio Application Developer。如果不是,您仍可使用 Lombok;但是不能享用开发时的种种益处。不过,您仍 然可以享用编译时的益处。

首先,打开您的浏览器并将 URL 指向 http://projectlombok.org/。

在撰写本文之时,用这个 URL 打开的页面的右上角会 出现一个很大的单词。这个单词是 “Download”。单击该单词并开始下载 lombok.jar。此文件无需解压缩,而从其他站点下载的文件中,99% 都需要解压缩。

下载此文件后,需要执行这个 JAR 文件。在您的操作系统中打开一个提示符,进入 到安装了 lombok.jar 的那个目录,并键入 java -jar lombok.jar。

以上假设在您的路径内已经有 Java Runtime Environment (JRE)。如果没有,需要添加 它。如果要了解如何添加,可以参考针对您的具体操作系统的相关文档。

如果您使 用的是 Microsoft® Windows®,那么还可以双击这个 lombok.jar 图标。同样地, 您必须能够从您的图形用户界面(GUI)执行 JAR。

不管采取何种方式,应该最终都 能看到一个 Lombok 安装屏幕。该屏幕会提问 Eclipse 或 WebSphere Studio Application Developer 可执行文件位于何处。它的默认位置有可能是正确的。但有时可能需要更改这个 默认位置。

单击 Install/Update,Lombok 会被迅速并入 Eclipse 开发环境。如果 已经运行了 Eclipse,那么就需要关闭它并重启。

以简单的方式消除 Java 的冗长(2)

时间:2011-04-30 IBM Brian M. Carey

使用 Lombok

现在,就可 以在 Eclipse 或 WebSphere Studio Application Developer 内开始使用 Lombok 了。请参 考清单 1 内的代码。

清单 1. Java bean 的一个良好开端

public class Lure {   private String name;   private int size;   private String color;   private String style; }

以上是一个简单的 Java bean 的典型开始。从这里,可以为每个属性添加 getters 和 setters。然后再添加一个 equals() 方法

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号