枚举类enum是JDK1.5引入的,之前都是用public static final int enum_value来代替枚举类的。枚举类enum是一种特殊的类,它默认继承了类java.lang.Enum。和其它普通类一样,enum同样可以有成员变量、方法、构造器,也可以实现一个或多个接口,区别是:

- 如果有构造器,必须用private修饰。
- 枚举类不能派生子类。
- 枚举类所有的实例必须在第一行显示定义。系统会自动给这些实例加上public static final修饰,无须程序员显示定义。
- 枚举类默认提供了values()方法,方便遍历所有的枚举值

enum中的方法(Enum提供的方法):
> public static <T extends Enum<T>> T valueOf(Class<T> enumType, String name)     返回指定的枚举值。

public final int compareTo(E o)    比较相同类型的枚举值

public final int ordinal()     返回枚举的索引值,第一个枚举值从零开始。

public final String name()     返回枚举实例名称

public String toString()       返回枚举产量名称

**交通灯实例**
```java
public enum TrafficLight {
    RED("红"), YELLOW("黄"), GREEN("绿");
    private String name;
    private TrafficLight(String name) {
        this.name = name;
    }
    public String getName() {
        return name;
    }
    public void jude(TrafficLight light) {
        switch (light) {
        case RED:
            System.out.println("stop");
            break;
        case YELLOW:
            System.out.println("go");
            break;
        case GREEN:
            System.out.println("wait");
            break;
        default:
            break;
        }
    }
    public static void main(String[] args) {
        for (TrafficLight e : TrafficLight.values()) {
            System.out.println(e.name());
        }
    }
}
```



Java枚举类enum的更多相关文章

  1. java 枚举类 enum 总结

    枚举定义: enum是计算机编程语言中的一种数据类型.枚举类型:在实际问题中,有些变量的取值被限定在一个有限的范围内.例如,一个星期内只有七天,一年只有十二个月,一个班每周有六门课程等等.如果把这些量 ...

  2. java枚举类Enum方法简介(valueof,value,ordinal)

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

  3. java 枚举 类 enum

    public abstract class Enum<E extends Enum<E>> implements Comparable<E>, Serializab ...

  4. Java基础(七)泛型数组列表ArrayList与枚举类Enum

    一.泛型数组列表ArrayList 1.在Java中,ArrayList类可以解决运行时动态更改数组的问题.ArrayList使用起来有点像数组,但是在添加或删除元素时,具有自动调节数组容量的功能,而 ...

  5. java枚举类

    enum关键字用于定义枚举类,若枚举只有一个成员, 则可以作为一种单例模式的实现方式.   枚举类对象的属性不应允许被改动, 所以应该使用 private final 修饰. 枚举类的使用 priva ...

  6. 【转】java枚举类型enum的使用

    原文网址:http://blog.csdn.net/wgw335363240/article/details/6359614 java 枚举类型enum 的使用 最近跟同事讨论问题的时候,突然同事提到 ...

  7. 转载 java枚举类型enum的使用 (原文地址:http://blog.csdn.net/wgw335363240/article/details/6359614)

    java枚举类型enum的使用 最近跟同事讨论问题的时候,突然同事提到我们为什么java中定义的常量值不采用enmu枚举类型,而采用public final static 类型来定义呢?以前我们都是采 ...

  8. Java基础15:深入剖析Java枚举类

    更多内容请关注微信公众号[Java技术江湖] 这是一位阿里 Java 工程师的技术小站,作者黄小斜,专注 Java 相关技术:SSM.SpringBoot.MySQL.分布式.中间件.集群.Linux ...

  9. 深入理解Java枚举类型(enum)

    https://blog.csdn.net/javazejian/article/details/71333103 深入理解Java类型信息(Class对象)与反射机制 深入理解Java枚举类型(en ...

随机推荐

  1. 关于iOS9之后的loadViewIfNeeded

    iOS9之前 有些时候因为需要手动调用loadview 但是有风险,系统不再调用viewDidLoad 所以手动调用loadview是错误的 iOS9之后出现了loadViewIfNeeded解决了这 ...

  2. iOS-OC-基础-NSDate常用方法

    NSDate常用方法 /*=============================NSDate日期类的使用=============================*/ // 获取当前时间,获得的时 ...

  3. (转)set集合的应用

    set集合的应用 python的set和其他语言类似, 是一个无序不重复元素集, 基本功能包括关系测试和消除重复元素. 集合对象还支持union(联合), intersection(交), diffe ...

  4. ecos编译redboot,vmware运行redboot,执行hello world(图形配置)

    1- 下载源文件 :~/ecos$ ls -lrt total 80 drwxr-xr-x 7 XXXX XXXX  4096 Mar 27  2009 ecos-3.0 -rw-r--r-- 1 X ...

  5. Python 之socket的应用

    本节主要讲解socket编程的有关知识点,顺便也会讲解一些其它的关联性知识: 一.概述(socket.socketserver): python对于socket编程,提供了两个模块,分别是socket ...

  6. 检测页面的localstorage剩余容量

    首先用了JSON.stringify(localStorage).length得出你当前页面的localstorage所使用的字符数量current_num. 然后你再去http://arty.nam ...

  7. 理解JMS规范中消息的传输模式和消息持久化

    http://blog.csdn.net/aitangyong/article/category/2175061 http://blog.csdn.net/aitangyong/article/det ...

  8. CentOS安装错误:no default or ui configuration

    靠,以后再也不用浏览器自带的下载工具下载镜像文件了,原来是下载的不完整,但是显示完全下载完毕了,真特么误导人.文件的checksum不对. references: https://www.centos ...

  9. 64位Win7安装+32位Oracle + PL/SQL 解决方法

    软件景象:64位win7.32位Oracle 10g. PL/SQL 9.0.4.1644 媒介:以前开辟用的都是32位体系,忽然换到64位上,安装景象真的有点麻烦了,尤其对于PL/SQL只支撑32位 ...

  10. MongoDB基本命令随便敲敲

    1,mongoDB状态,版本,当前连接的数据库名称