在Eclipse 3.1中体验J2SE 5.0的新特性: 第一部分 :枚举类型

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 枚举类型创建模板

时间: 2024-10-31 02:10:40

在Eclipse 3.1中体验J2SE 5.0的新特性: 第一部分 :枚举类型的相关文章

在Eclipse 3.1中体验J2SE 5.0的新特性: 第三部分 :范型

J2SE 5.0 (Tiger)的发布是Java语言发展史上的一个重要的里程碑, 是迄今为止在 Java 编程方面所取得的最大进步. J2SE 5.0提供了很多令人激动的特性.这些特性包括范型(generics)的支持, 枚举类 型(enumeration)的支持, 元数据(metadata)的支持, 自动拆箱(unboxing)/装箱 (autoboxing), 可变个数参数(varargs), 静态导入(static imports), 以及新的线程架 构(Thread framework)

在Eclipse 3.1中体验J2SE 5.0的新特性 第二部分 :注释类型

J2SE 5.0 (Tiger)的发布是Java语言发展史上的一个重要的里程碑, 是迄今为止在 Java 编程方面所取得的最大进步. J2SE 5.0提供了很多令人激动的特性.这些特性包括范型(generics)的支持, 枚举类 型(enumeration)的支持, 元数据(metadata)的支持, 自动拆箱(unboxing)/装箱 (autoboxing), 可变个数参数(varargs), 静态导入(static imports), 以及新的线程架 构(Thread framework)

在低版本的vc中使用vc 10.0的新特性

/*! 在低版本的vc中使用vc 10.0的新特性 created by : andrew.wu (erpingwu@gmail.com) */ vc 10.0提供了一些新的特性,最引人注目的莫过于lambda, 但vs2010 beta内存占用之多也不得不让人心生退让. 高手 7cat 指出 "vc ide 只是一个壳" 那么如果利用 vc 10.0 编译器的新功能? 以vc9为例, 注意 Tools->Projects and Solutions->VC++ Direc

VS2015中C#版本6.0的新特性 你需要知道_实用技巧

本文列出个人感觉比较有用的几个新功能,供大家参考,具体内容如下 注意:这些新特性只能用于VS2015及更高版本,无法在VS2013.VS2010等低版本中使用.当然,如果你不喜欢这些新的特性,仍然可以继续使用原来的用法(所以说它是新的语法糖). 1.自动属性初始化的改进(有用) 原来的用法(声明时无法同时初始化),例如: class MyClass { public int Age { get; set; } public string Name { get; set; } public MyC

J2SE 5.0 语言新特性

j2se  JavaTM Language Features For more information see New Language Features. Generics This long-awaited enhancement to the type system allows a type or method to operate on objects of various types while providing compile-time type safety. It adds

J2SE 5.0的新特性---Autoboxing

j2se AutoboxingAs any Java programmer knows, you can't put an int (or other primitive value) into a collection. Collections can only hold object references, so you have to box primitive values into the appropriate wrapper class (which is Integer in t

PHP7中我们应该学习会用的新特性

PHP7于2015年11月正式发布,本次更新可谓是PHP的重要里程碑,它将带来显著的性能改进和新特性,并对之前版本的一些特性进行改进.本文小编将和大家一起来了解探讨PHP7中的新特性. 1. 标量类型声明 我们知道PHP是一种弱类型的编程语言,因此没有提供任何方法来指定输入参数和返回值的类型,PHP7突破了这种现状,增加了对标量类型(int,float,string,bool)的声明支持,增加declare(strict_types=1)指令声明是否严格类型校验,我们来看一段代码: (stric

VS2005中使用C#的新特性:可空类型

随着C#语言最新标准的出炉,现在它也提供了对可空类型的支持.这个小变化将会在处理那些包括可选项的数据库记录时非常有用.当然在其他地方,它也是非常有用的. 简单说来,可空数据类型就是包含了所定义的数据类型或者值的空(null)的类型.C#的ECMA-334标准提供了对所有C#值类型的可空版本的描述. 定义可空类型 定义可空类型和非可空类型基本类似,不同的是采用了?来表示.如定义一个整型,你可以使用简单的语句: int myInt = 1; 为了使得myInt能够存储一个空值,你可以这样声明它: i

LINQ体验(1)——Visual Studio 2008新特性

一.写本系列的目的 我平时利用课余零碎时间来学习ASP.NET3.5.LINQ.Silverlight.ASP.NET 3.5 Extensions等新东西,通过笔记形式来记录自己所学的历程,也给大家一起 学习Visual Studio 2008 和 .NET 3.5提供一个平台,为保证此系列的完整性, 我打算先依次介绍一下C# 3.0新语言特性和改进,然后从一条一条LINQ语句分析 来贯穿LINQ的知识点.最后通过一个实例程序实战Linq to sql带来全新的编程 体验.此系列比较长,欢迎大