`
1028826685
  • 浏览: 940801 次
  • 性别: 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();
}
分享到:
评论

相关推荐

    jdk1.5 windows版本 64位

    标题:“jdk1.5 windows版本 64位” 描述:“jdk1.5 windows版本 64位,Java开发依赖环境” 标签:“windows” 在这个主题中,我们聚焦的是Oracle JDK 1.5(也被称为Java Development Kit,简称JDK)在Windows...

    jdk1.5x64位 windows版.zip

    首先,JDK1.5引入了类型安全的枚举(enum),这是对原始的常量类的一个巨大改进。枚举类型使得代码更加清晰,更易于理解和维护,同时避免了因常量值的错误使用而导致的潜在问题。 其次,泛型(Generics)是JDK1.5的...

    linux系统jdk1.5下载

    JDK1.5引入了一些重要的特性,如增强的for循环(foreach)、匿名内部类的改进、枚举类型以及泛型的初步支持。这些特性对Java编程产生了深远影响,提升了代码的可读性和安全性。 然而,由于JDK1.5已不再受官方支持,...

    Java-jdk1.5安装包

    JDK1.5引入了枚举类型,使得枚举更安全、易用。枚举可以拥有方法和字段,还可以实现接口,提高了代码的结构化和可维护性。 三、变量注解(Annotations) 注解是一种元数据,提供了一种方式来将信息附加到代码上,而...

    JDK1.5的32位和64位安装包

    另外,JDK1.5对枚举类型(Enums)进行了重大改进,使得枚举成为一种完整的类型,拥有自己的方法和常量,不再仅仅是简单的字符串常量集合。这种改进提高了枚举的使用灵活性和安全性。 此外,JDK1.5还引入了变长参数...

    JDK1.5,JDK1.5

    泛型是JDK1.5最重要的特性之一,它允许在类、接口和方法声明中使用类型参数,以实现数据类型的参数化。泛型提高了代码的类型安全性和可读性,减少了类型转换的需要,并允许编译器检查类型错误。 2. **自动装箱与...

    包含 jdk1.5免安装、jdk1.6免安装、jdk1.8(32和64)

    这个压缩包包含了三个不同版本的JDK:JDK 1.5、JDK 1.6和JDK 1.8,其中1.5和1.6是早期版本,而1.8是最流行且广泛使用的版本之一。 **JDK 1.5(也称为Java 5.0)** JDK 1.5在2004年发布,引入了许多重要的新特性,如...

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

    10. **枚举常量的构造函数**:在JDK1.5中,枚举类型的构造函数可以接收参数,允许创建具有不同初始状态或行为的枚举实例。 以上这些特性极大地增强了Java语言的功能和表现力,让Java开发者能够编写出更加安全、可...

    JDK1.5中文帮助文档

    这个“JDK1.5中文帮助文档”是官方英文文档的中文译本,为中文用户提供了详细的解释和易于理解的指导,旨在帮助开发者更好地理解和利用JDK 1.5的新功能。** 1. **泛型(Generics)** 泛型是JDK 1.5引入的最显著的...

    jdk1.5 windows 64位官方正式版,绝对有效

    此外,JDK1.5还引入了枚举类型(enum),这是对原始的常量类模式的改进。枚举类型使得创建固定数量的实例变得更加安全和易于管理,同时提供了更强大的语法支持,如枚举常量之间的比较和遍历。 autoboxing和...

    linux下JDK1.5

    本文将深入探讨Linux下JDK1.5的相关知识点,帮助用户更好地理解和使用这个版本的Java开发环境。 首先,安装JDK1.5在Linux系统中通常涉及以下步骤: 1. **下载**:你需要从Oracle官方网站或者第三方镜像站点下载...

    jdk1.5 64位 免安装

    其次,枚举(Enums)在JDK1.5中被引入,它是一种预定义的类,用于创建不可变的、有限的常量集合。枚举类型使得处理一组固定值变得更加方便和安全,避免了使用整数常量或字符串常量可能导致的错误。 autoboxing和...

    jdk1.5.zip 免费分享,哈哈

    Java Development Kit(JDK)是Java编程语言的核心组件,它包含了一个Java编译器、Java运行时环境(JRE)、调试工具和其他必要...因此,这个压缩包中的"jdk1.5.exe"可能是开发者为了兼容性或历史项目而寻找的重要资源。

    IBMJDK1.5linux.zip

    在压缩包"IBMJDK1.5linux.zip"中,主要包含的是IBM JDK 1.5的安装文件和相关文档。安装完成后,开发者可以通过设置环境变量(如JAVA_HOME、PATH)来使用这个JDK。通常,这个JDK会包含Java编译器(javac)、Java解释...

    历史版本JDK1.5安装包

    3. 枚举(Enums):JDK 1.5引入了枚举类型,用于表示一组固定的常量,比如颜色、星期等。枚举提供了比常量类更安全、更方便的使用方式。 4. 注解(Annotations):注解是一种元数据,可以提供有关代码的信息,但不...

    jdk1.5.rar

    JDK 1.5引入了枚举类型,使枚举更安全、更易于使用,同时也支持枚举的继承和方法。 其次,自动装箱与拆箱是另一个显著特性。在JDK 1.5之前,开发者需要手动进行基本类型与其对应的包装类之间的转换。从这个版本开始...

    jdk1.5_forLinux.zip

    本文将深入探讨JDK 1.5 for Linux版本,它对开发者的重要性以及如何在Linux环境下安装和使用。 JDK 1.5,又称为Java SE 5.0,是Java历史上的一个重要里程碑,发布于2004年。这个版本引入了许多创新特性,极大地提升...

    JDK1.5、JDK5下载

    JDK1.5,也被称为JDK 5.0,是一个重要的版本,它引入了许多创新特性,显著提升了开发效率和代码质量。这个版本在2004年发布,是Java发展历程中的一个里程碑。 JDK1.5的主要新特性包括: 1. **泛型(Generics)**:...

    jdk jdk1.5 windows系统

    2. **枚举(Enums)**:JDK1.5添加了枚举类型,用于定义一组固定值的集合,取代了传统的常量类。枚举可以拥有方法、实现接口,提供了更强大的功能和类型安全性。 3. **自动装箱与拆箱(Autoboxing/Unboxing)**:...

    jdk1.5、1.6压缩包

    本压缩包包含了JDK的两个重要版本:1.5(也称为Java 5)和1.6(Java 6),这两个版本在历史上对Java社区有着深远的影响。 JDK 1.5(2004年发布)是Java发展的一个重要里程碑,引入了许多新特性,极大地提升了开发...

Global site tag (gtag.js) - Google Analytics