Enum是enumeration(列举)的简写形式,包含在java.lang包中.熟悉C,C++,C#,或Pascal人应该对列举有所了解,先看个例子:
publicenumSeason{winter,spring,summer,fall}
一个enum是定义一组值的对象,它可以包括零个或多个值成员.它是属于enum类型的,一个enum对象中不可有两个或多个相同的属性或值.在次之前的java程序员一般是用接口的方法实现列举的,如:
publicinterfaceSeason{
staticwinter=0;
staticspring=1;//etc..
}引入了enum的java的列举的编写方便了许多,只须定义一个enum型的对象.enum对象的值都回自动获得一个数字值,从0开始,依次递增.看一个比较简单的enum实现的例子:
EnumDemo.java
packagenet.javagarage.enums;
/*
Wecanloopoverthevaluesweputintotheenum
usingthevalues()method.
NotethattheenumSeasonsiscompiledintoa
separateunit,calledEnumDemo$Seasons.class
*/
publicclassEnumDemo{
/*declaretheenumandaddvaluestoit.notethat,likeinC#,wedon'tusea;to
endthisstatementandweusecommastoseparatethevalues*/
privateenumSeasons{winter,spring,
summer,fall}
//listthevalues
publicstaticvoidmain(String[]args){
for(Seasonss:Seasons.values()){
System.out.println(s);
}
}
}运行上述代码你回得到以下结果:
winter
spring
summer
fall
Enum的属性调用:
下面的代码展示了调用enum对象的方法,这也是它通常的用法:
packagenet.javagarage.enums;
/*
File:EnumSwitch.java
Purpose:showhowtoswitchagainstthevaluesinanenum.
*/
publicclassEnumSwitch{
privateenumColor{red,blue,green}
//listthevalues
publicstaticvoidmain(String[]args){
//refertothequalifiedvalue
doIt(Color.red);
}
/*notethatyouswitchagainsttheUNQUALIFIEDname.thatis,"caseColor.red:"isa
compilererror*/
privatestaticvoiddoIt(Colorc){
switch(c){
casered:
System.out.println("valueis"+Color.red);
break;
casegreen:
System.out.println("valueis"+Color.green);
break;
caseblue:
System.out.println("valueis:"+Color.blue);
break;
default:
System.out.println("default");
}
}
}为enums添加属性和方法
URL查看 http://www.qqread.com/java/2007/10/w350474.html相关图文阅读
频道图文推荐
健 康 咨 询
时 尚 咨 询
相关专题
- Java环境安装配置 (5668篇文章)
- Java编程开发手册 (8321篇文章)
- 精通Hibernate之映射继承关系(四) (0次浏览)
- 何不将Java与.NET合二为一? (0次浏览)
- Hibernate的JNDI名称绑定分析 (0次浏览)
- 精通Hibernate之映射继承关系(一) (0次浏览)
- 精通Hibernate之映射继承关系(二) (0次浏览)
- 美国计算机教授语出惊人:Java对学生有害 (0次浏览)
- JDK 6 JRE 6 Update 4 (0次浏览)
- 三步教你改善Java代码质量 (0次浏览)
- Java语言入门 简述Java语言回收机制 (0次浏览)
- 2008年Java开发者最迫切的五个期望 (0次浏览)



