`
1028826685
  • 浏览: 920059 次
  • 性别: Icon_minigender_1
  • 来自: 重庆
社区版块
存档分类

JDK1.5枚举使用

    博客分类:
  • J2EE
阅读更多
知识点


枚举类具有如下特性:
枚举类也是一种特殊形式的Java类。
枚举类中声明的每一个枚举值代表枚举类的一个实例对象。
与java中的普通类一样,在声明枚举类时,也可以声明属性、方法和构造函数,但枚举类的构造函数必须为私有的(这点不难理解)。
枚举类也可以实现接口、或继承抽象类。
JDK5中扩展了swith语句,它除了可以接收int, byte, char, short外,还可以接收一个枚举类型。
若枚举类只有一个枚举值,则可以当作单态设计模式使用。
练习:请编写一个关于星期几的枚举WeekDay,要求:
枚举值:Mon、Tue 、Wed 、Thu 、Fri 、Sat 、Sun
该枚举要有一个方法,调用该方法返回中文格式的星期。
Java中声明的枚举类,均是java.lang.Enum类的孩子,它继承了Enum类的所有方法。常用方法:
name()
ordinal()//返回枚举常量的序数(它在枚举声明中的位置,其中初始常量序数为零)。
valueof(Class enumClass, String name) //返回带指定名称的指定枚举类型的枚举常量。
//String str=”B”;Grade g=Grade.valueOf(Grade.class,str);
values() 此方法虽然在JDK文档中查找不到,但每个枚举类都具有该方法,它遍历枚举类的所有枚举值非常方便。





//如何定义枚举的构造函数、方法、字段
public class Demo1 {
@Test
public void test() {
print(Grade.B);
}
   
public void print(Grade g) // A B C D E
{
String value=g.getValue();
System.out.println(value);
}
}

/*
* class Grade{ private Grade(){ }
*  public static final Grade A=new Grade();
*  public static final Grade B=new Grade();
*  public static final Grade C=new Grade();
*  public static final Grade D=new Grade();
*  public static final Grade E=new Grade();
*  }
*/

enum Grade {
// class A 100-90 B 89-80 C 79-70 D 69-60 E 59-0
同上面的注释代码 这里是带参数的构造函数,以下就是在实例化对象
A("100-90"), B("89-80"), C("79-70"), D("69-60"), E("59-0");// object
private String value;
//构造函数是私有的
private Grade(String value){
this.value=value;
}
public String getValue(){
return this.value;
}
}


//带抽象方法的枚举

public class Demo1 {
@Test
public void test() {
print(Grade.B); //89-80,良
}
   
public void print(Grade g) // A B C D E
{
String value=g.getValue();
String value2=g.localeValue();

System.out.println(value+","+value2);
}
}

enum Grade {// class A 100-90优 B 89-80良 C 79-70 一般D 69-60差 E 59-0不及格
        //因为在实例化这个对象的时候这个类有抽象方法则必须进行实现
A("100-90"){
public String localeValue(){
return "优";
}
},
B("89-80"){
public String localeValue(){
return "良";
}
},
C("79-70"){
public String localeValue(){
return "一般";
}
},
D("69-60"){
public String localeValue(){
return "差";
}
},
E("59-0"){
public String localeValue(){
return "不及格";
}
};// object

private String value;
private Grade(String value){
this.value=value;
}
public String getValue(){
return this.value;
}
       //声明抽象方法
public abstract String localeValue();
}
分享到:
评论

相关推荐

    2022年掌握JDK1.5枚举类型Java教程.docx

    2022年掌握JDK1.5枚举类型Java教程.docx

    详细介绍JDK1.5的各种新特性

    “JDK1.5”(开发代号猛虎)的一个重要主题就是通过新增一些特性来简化开发,这些特性包括泛型,for-else 循环,自动装包/拆包,枚举,可变参数, 静态导入

    jdk1.5后的特性.rar

    jdk1.5的以后的技术,例如泛型,枚举,注释的基本使用方法,给刚学习java的朋友一些不错的介绍

    第17章 JDK 1.5以上版本的新功能──枚举

    JAVA 从入门到精通 第17章 JDK 1.5以上版本的新功能──枚举.ppt

    掌握JDK1.5枚举类型

    Enum作为Sun全新引进的一个...注意这一点只是针对于枚举值,我们可以和在普通类里面定义 变量一样定义其它任何类型的非枚举变量,这些变量可以用任何你想用的修饰符。 3.Enum默认实现了java.lang.Comparable接口。 4.

    JDK1.5新特性介绍

    “JDK1.5”(开发代号猛虎)的一个重要主题就是通过新增一些特性来简化开发,这些特性包括泛型,for-each 循环,自动装包/拆包,枚举,可变参数, 静态导入 。使用这些特性有助于我们编写更加清晰,精悍,安全的...

    JDK 1.5新特性---枚举类型

    Enum是Sun全新引进的一个关键字,看起来很象是特殊的class,它也可以有自己的变量,可以定义自己的方法,可以实现一个或者多个接口。在声明一个enum类型时,应该注意到enum类型有如下的一些特征:

    JDK1.5新特性

    变长参数 范型 枚举类型 增强for循环 自动装箱 变长参数 范型 枚举类型 增强for循环 自动装箱

    jdk1.5.0.08 wini586

    安装包,的一个重要主题就是通过新增一些特性来简化开发,这些特性包括泛型,for-each 循环,自动装包/拆包,枚举,可变参数, 静态导入 。使用这些特性有助于我们编写更加清晰,精悍,安全的代码。

    JDK5.0新特性 常量 、枚举、 for each、反射

    jdk1.5以上版本中新增加的特性描述,带有代码例子让你很清晰的明白jdk的 常量 、枚举、 for each、反射等各种新的特性,相信需要的你,一定满足。

    JDK5.0新特性 反射、枚举.rar

    jdk1.5以上版本中新增加的特性描述,带有代码例子让你很清晰的明白jdk的 常量 、枚举、 for each、反射等各种新的特性,相信需要的你,一定满足。

    jdk-1_5_0_10-windows-i586-p.exe

    JDK1.5安装包,JDK1.5的一个重要主题就是通过新增一些特性来简化开发,这些特性包括泛型,for-each 循环,自动装包/拆包,枚举,可变参数, 静态导入 。使用这些特性有助于我们编写更加清晰,精悍,安全的代码。

    jdk1.5.0_10

    jdk1.5新特性 1.泛型 2.foreach 3.自动拆箱装箱 4.枚举 5.静态导入(Static import) 6.元数据(Metadata) 7.线程池 8.Java Generics

    JDK新特性.rar

    jdk1.5以上版本中新增加的特性描述,带有代码例子让你很清晰的明白jdk的 常量 、枚举、 for each、反射等各种新的特性,相信需要的你,一定满足。

    java中的枚举的几种用法

     在JDK1.5之前,我们定义常量都是:public static fianl….。现在好了,有了枚举,可以把相关的常量分组到一个枚举类型里,而且枚举提供了比常量更多的方法。  Java代码  publicenumColor{ RED,GREEN,BLANK...

    JAVA5新特性介绍.zip

    JDK1.5新特性:自动拆装箱、泛型、增强for循环、静态方法导入、可变参数、枚举

    枚举(switch、覆盖枚举、实现接口等)

    在JDK1.5 之前,我们定义常量都是: publicstaticfianl.... 。现在好了,有了枚举,可以把相关的常量分组到一个枚举类型里,而且枚举提供了比常量更多的方法。 public enum Color { RED, GREEN, BLANK, YELLOW ...

    java新技术

    java新技术:JDK1.5和1.6的细微区别;Integer对象;枚举;反射;HashCode

    【后端】java基础(5.6)java高级基础之枚举

    java中除了类和接口,还有一个类型叫做枚举(enum),它出现得比较晚,在JDk1.5之后才出,因此对我们来说并不常用,但是它的作用还是不小。 创建的时候前面和创建类、接口一样,在new之后,我们选择enum即可。表面上...

    Java enum(枚举)的使用

     enum 的全称为 enumeration, 是 JDK 1.5 中引入的新特性,存放在 java.lang 包中,在上面的这种情况下,enum能派上用场了。枚举类型的用途不仅如此,具体可用场景可看下面的介绍  1、常量  以前我们定义一...

Global site tag (gtag.js) - Google Analytics