在Eclipse 3.1中体验J2SE 5.0的新特性: 第一部分 :枚举类型2011-04-02 IBM 邹青吴嫣 吴疆J2SE 5.0 (Tiger)的发布是Java语言发展史上的一个重要的里程碑, 是迄今为止在 Java 编程方面所取得的最大进步.J2SE 5.0提供了很多令人激动的特性.这些特性包括范型(generics)的支持, 枚举类型 (enumeration)的支持, 元数据(metadata)的支持, 自动拆箱(unboxing)/装箱 (autoboxing), 可变个数参数(varargs), 静态导入(static imports), 以及新的线程架 构(Thread framework).随着J2SE 5.0的推出, 越来越多的集成开发环境(IDE)支持J2SE 5.0的开发. 著名的开 源Java IDE Eclipse从3.1M4开始支持J2SE 5.0的开发, 目前最新的版本是3.1RC4.本系列将介绍J2SE 5.0中三个比较重要的特性: 枚举类型, 注释类型, 范型, 并在此 基础上介绍在如何在Eclipse 3.1开发环境中开发枚举类型, 注释类型和范型应用.本文将 介绍枚举类型.1. 枚举类型1.1枚举类型简介J2SE 5.0 以及之前的JDK有两种基本方法可以来定义新类型:通过Classes 以及 Interface. 对于大部分面向对象编程来说,这两种方法看起来似乎足够了.但是在一些特 殊情况下,这些方法就不适合.例如,我们想定义一个类型 Priority, 它只能接受 High, Medium, Low 三种值. 其他任何值都是非法的.J2SE 5.0 以前的JDK是可以构造这 种类型的,但是需要做很多工作,有可能会带来如不安全(类型安全性问题???)等潜在问 题,而J2SE 5.0的枚举类型(Enum) 能避免这些问题.Eclipse 是JAVA程序员最常用的开发平台,而Eclipse 3.1提供对J2SE 5.0的支持,它 为J2SE 5.0的新功能提供了帮助工具.在对枚举类型的支持上,它不仅提供了枚举类型的 创建模板,而且为枚举类型的各种开发错误提供错误提示及帮助修改.本文首先介绍枚举类型的创建基本概念以及如何在Eclipse 3.1平台上创建枚举类型, 然后我们通过在Eclipse 3.1开发环境中的例子来说明枚举类型的应用.1.2 创建枚举类型下面的例子显示了如何创建一个最基本的枚举类型:清单 1. 枚举类型的定义
public enum Priority {High, Medium, Low };它包括一个关键字enum ,一个新枚举类型的名字 Priority 以及为Priority定义的 一组值.在Eclipse 3.1平台上,按照下面步骤来生成枚举类型:(Eclipse 3.1提供了一个新的 枚举类型创建向导(wizard)以方便用户创建枚举类型)1) File->New->Other, 模板列表显示出来.2) 在模板列表上选中 Java->Enum, 点击 Next 按钮3) 按图 1填写每一个域 如下:图 1: Eclipse 3.1 枚举类型创建模板