网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > Java
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.Java 理论与实践:线程池与工作队.
.超越梦想 EJB 3.0 规范全新体验.
.将JAVA编译为EXE的几种方法.
.EJB核心技术及其应用(2).
.攥在手掌里的Java.
.Eclipse开发struts完全指南一(全.
.Eclipse开发工具使用指南.
.Java基础知识 J2EE初学者需要注意.
.多线程学习初步.
.Java高级编程——泛型类型 第二部.
.漫谈Java数据库存取技术.
.JAVA规则 中级篇.
.Configuringhigh-speeddialup.
.关于 Java.
.面向Web的JMS应用系统.
.Java 数据对象(JDO)介绍(二).
.java 应用程序的发布.
..NET 智能客户端 ( SmartClient ).
.使用档案文件提高applet的加载速.
.RMI规范--第七章.

Eclipse3.1中体验J2SE 5.0之枚举类型

发表日期:2008-1-5



  本文将介绍J2SE 5.0中三个比较重要的特性: 枚举类型, 注释类型, 范型, 并在此基础上介绍在如何在Eclipse 3.1开发环境中开发枚举类型, 注释类型和范型应用。

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

Eclipse3.1中体验J2SE 5.0之枚举类型(图一)

  4) 点击 Finish 按钮, 生成Priority 的类(定义???), 并声明Priority 的每一个值,如下图 2所示:(High, Medium, low从何而来???)

  图 2: 枚举类型Priority

Eclipse3.1中体验J2SE 5.0之枚举类型(图二)
(点击查看原图)

  在创建枚举类型时,注重几个重要的概念.

  • 所有创建的枚举类型都扩展于 java.lang.Enum. Enum 是在J2SE 5.0 里定义的一个新类, 它本身不是枚举类型.在创建枚举类型时,必须用enum 要害字,不能直接地定义一个继续Enum的类来创建一个枚举类型,尽管所有创建的枚举类型实际上都是Enum 的子类. 假如直接继续Enum, compiler 就会报错(会导致编译错误).如图3 所示

    图3. 直接继续Enum 类

    Eclipse3.1中体验J2SE 5.0之枚举类型(图三)
    (点击查看原图)

  • 枚举类型里定义的每一个值都是枚举类型的一个实例,比方说High是Priority的一个实例.枚举类型又是扩展于Enum. 所以枚举类型的每一个值声明时, 缺省时都将映射到Enum(String name, int ordinal) 构造函数中.换句话说,enum Priority {High, Medium, Low } 的实现是调用了下面的Enum 构造函数:

    清单2 映射的构造函数调用

     
      new Enum< Priority >("High", 0); 
      new Enum< Priority >("Medium", 1); 
      new Enum< Priority >("Low", 2); 
    


上一篇:如何用Java实现Web服务器(1) 人气:448
下一篇:论坛、聊天室中滤除HTML标记 人气:650
浏览全部Java的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐