`
itlangzicn
  • 浏览: 39137 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Java之枚举类型

    博客分类:
  • Java
阅读更多

用一个例子来说明:

  在程序中规定交通灯的取值只能是RED,GREEN,YELLOW取其他值就会报错,并且还能根据当前颜色知道下个颜色.怎么实现??

一. 用普通类来实现

public abstract class TrafficLamp {

 

public TrafficLamp() {}

//取得下个灯

public abstract TrafficLamp nextLamp();

//内部类实现覆写

public final static  TrafficLamp  RED = new TrafficLamp(){

@Override

public TrafficLamp nextLamp() {

return GREEN;

}

};

public final static  TrafficLamp  GREEN = new TrafficLamp(){

@Override

public TrafficLamp nextLamp() {

return YEllOW;

}

};

public final static  TrafficLamp  YEllOW = new TrafficLamp(){

@Override

public TrafficLamp nextLamp() {

return RED;

}

};

@Override

public String toString() {

if(this == RED){

return "RED";

}else if(this == GREEN){

return "GREEN";

}else{

return "YEllOW";

}

}

}

测试:

public class EnumTest {

public static void main(String[] args) {

TrafficLamp red = TrafficLamp.RED;

System.out.println(red.toString());

System.out.println(red.nextLamp().toString());

}

结果:

RED

GREEN

 

二、用枚举实现

 public class EnumTest {

public static void main(String[] args) {

TrafficLamp red = TrafficLamp.RED;

System.out.println(red.toString());

System.out.println(red.nextLamp().toString());

 

}

public enum TrafficLamp{

RED{

public  TrafficLamp nextLamp(){

return GREEN;

}

},

GREEN{

public  TrafficLamp nextLamp(){

return YELLOW;

}

},

YELLOW{

public  TrafficLamp nextLamp(){

return RED;

}

};

public abstract TrafficLamp nextLamp();

}

}

 

结果:

RED

GREEN

 

所以:

枚举就是要让某个类型的变量的取值只能为若干个固定值中的一个,否则,编译器就会报错。枚举可以让编译器在编译时就可以控制源程序中填写的非法值,普通变量的方式在开发阶段无法实现这一目标。

枚举就相当于一个类,其中也可以定义构造方法、成员变量、普通方法和抽象方法。

枚举元素必须位于枚举体中的最开始部分,枚举元素列表的后要有分号与其他成员分隔。把枚举中的成员方法或变量等放在枚举元素的前面,编译器报告错误。

 

枚举还提供了很多使用的方法。可以查看帮助文档

0
0
分享到:
评论

相关推荐

    Java枚举类型Enum的用法

    Java枚举类型(Enum)是Java SE 5.0引入的一种新的数据类型,它为开发者提供了更为强大且安全的方式来表示一组常量。枚举在Java中不仅是一个类,还是一种特殊的类型,允许我们定义自己的常量集合。接下来,我们将...

    java枚举类型说明

    ### Java枚举类型详解 #### 一、引言 在Java编程语言中,枚举(Enum)作为一种重要的数据类型,在程序设计中扮演着不可或缺的角色。本文将深入探讨Java枚举类型的特性和用法,并通过具体实例说明其优势所在。枚举...

    理解java枚举类型

    Java枚举类型是Java语言中的一种特殊的类,用于定义一组固定的常量集合。它在Java中扮演着重要的角色,提供了一种安全、类型化的常量表示方式,比传统的final static变量更具有优势。理解Java枚举类型对于编写高质量...

    简单总结java枚举类型

    Java枚举类型是Java语言中一种特殊的类,用于定义固定的常量集合,它提供了一种安全、类型化的方式来表示一组有限的值。枚举在Java中被引入为一个完整的类型,不同于C++中的枚举,这使得Java枚举更加强大且易于使用...

    Java枚举类型.pdf

    总结起来,Java枚举类型是一个强大的工具,它可以替代`static final`常量来表示一组固定的值,提供类型安全、易于维护的代码。通过枚举,我们可以更方便地管理常量,减少错误,并增加代码的灵活性。枚举是Java中一个...

    全面掌握java枚举类型(enum-type)1

    全面掌握 Java 枚举类型(enum type) Java 枚举类型是一种特殊的数据类型,它可以取有限个数的明确值。枚举类型的引入解决了 int 枚举模式和 String 枚举模式的缺点,提供了类型安全性、可读性和性能等优势。 ...

    java枚举结果类、根据状态值获取枚举值

    java枚举结果类、根据状态值获取枚举值 Controller: /** 模块类型枚举 */ model.addAttribute("mType", ModuleTypeEnum.ModuleTypeShow()); ftl: value="${mType.key}:${mType.value}” </#list>

    Java中的枚举类型Enum示例源代码

    Java枚举支持单例模式,因为每个枚举常量都是唯一的,不能通过`new`关键字实例化。此外,枚举类型的枚举常量可以按照声明顺序自然排序,这使得它们在处理有序数据时非常方便。 枚举类型还可以与其他集合框架结合...

    Java源码查看枚举类型定义.rar

    本资源"Java源码查看枚举类型定义.rar"包含了关于Java枚举类型的详细解释和实例,旨在帮助开发者深入理解这一特性。 首先,枚举类型在Java中通过关键字`enum`声明。例如: ```java public enum Color { RED, ...

    JAVA枚举类型的用法详解

    下面我们将深入探讨Java枚举类型的常见用法。 首先,枚举类型在本质上等同于定义了一组静态常量。创建枚举类型的语法如下: ```java public enum Belle { para1, para2, para3, para4; } ``` 这会创建一个名为`...

    java中的枚举类型

    Java 中的枚举类型 Java 中的枚举类型是一种特殊的数据类型,它允许我们定义一组命名的常量。枚举类型骨子里是一个类别,所以您编译完成后,会产生一个 `.class` 档案。 枚举类型的用法 在 Java 中,我们可以使用...

    如何使用Java枚举类型

    一个关于JAVA枚举类型的MHT文件,包含JAVA枚举类型的用法,以及JDK版本的问题。

    Java中枚举类型的使用.docx

    ### Java中枚举类型的使用详解 #### 一、引言 在软件开发过程中,经常会遇到需要定义一组固定的常量的情况,比如系统中的状态值、选项等。这些常量的定义方式直接影响到代码的可读性、可维护性和扩展性。在Java...

    高阶Java-Java枚举类型 enum 应用详解

    本篇文章将深入探讨Java枚举的特性、用法以及如何在实际开发中充分利用它们。 一、枚举的基本用法 1. 声明枚举类型: ```java public enum Color { RED, GREEN, BLUE } ``` 在这里,`Color`是枚举类型,`RED`, `...

    java枚举类型优秀源代码

    - **自动实现接口**:枚举类型会自动实现`java.lang.Enum<E>`接口,其中`E`是枚举类型的名称。 - **安全性**:枚举类型的成员是固定的,不允许外部添加或修改成员。 - **单例模式**:每个枚举成员都是单例的,只能被...

    java枚举实例代码

    在这个例子中,`Color` 是一个枚举类型,`RED`, `GREEN`, `BLUE` 是该枚举类型的三个实例,它们都是 `Color` 类型的常量。枚举的实例可以直接使用,无需通过 `new` 关键字创建。 枚举可以包含方法和字段,就像普通...

    Java中枚举类型的一种使用方式

    "Java中枚举类型的一种使用方式" Java中枚举类型是一种非常有用的技术,它可以帮助我们简化代码,提高代码的可读性和可维护性。在本文中,我们将通过一个实际例子来介绍Java中枚举类型的一种使用方式。 首先,让...

    Java中的“枚举类型

    ### Java中的“枚举类型”知识点详解 #### 一、引言 在Java编程语言中,枚举(Enum)作为一种特殊的类,其设计初衷是为了更好地处理一组固定不变的常量集合。相较于传统的使用`static final`字段来表示常量的做法...

    java枚举类型enum的使用

    ### Java 枚举类型 enum 的使用详解 #### 一、枚举类型概述 在 Java 中,枚举(enum)是一种特殊的类,它被用来表示一组固定的常量值。枚举类型自 JDK 1.5 开始引入,为开发者提供了一种更加安全、简洁的方式来...

Global site tag (gtag.js) - Google Analytics