`
zhang_xzhi_xjtu
  • 浏览: 527039 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Enum简介

    博客分类:
  • java
阅读更多
java的Enum不同于c的命名整型常量,它本身是有类型的,而且Enum不能用new生成。

Enum不能extends其他类型,因为它本身extends了java.lang.Enum,也不能被其他类型明确extends,好像final类一样。但是其实Enum还是可以被隐式继承的,constant-specific class bodies。

Enum可以实现接口,默认实现了Serializable和Comparable.

每个Enum默认有2个static方法,
public static E[] values()按声明顺序返回所有的enum。
public static E valueOf(String name)用指定的名字返回enum。

Enum常用方法:
public final String name()
public final int ordinal()
public final int compareTo(E o) 不覆盖的话为声明顺序
public final Class<E> getDeclaringClass()注意这个和getClass不同,因为有可能有constant-specific class bodies。

不支持clone。Enum可以是==比较相等性。
hashCode和equals也被final覆盖了.

注意有EnumSet和EnumMap,性能比较好。

语言支持Enum可以用switch.
分享到:
评论

相关推荐

    C++大学教程,一本适合初学者的入门教材(part2)

    3.9 案例:机会游戏与enum简介 3.10 存储类 3.11 作用域规则 3.12 递归 3.13 使用递归举例:Fibonacci数列 3.14 递归与迭代 3.15 带空参数表的函数 3.16 内联函数 3.17 引用与引用参数 3.18 默认参数 ...

    C++大学教程,一本适合初学者的入门教材(part1)

    3.9 案例:机会游戏与enum简介 3.10 存储类 3.11 作用域规则 3.12 递归 3.13 使用递归举例:Fibonacci数列 3.14 递归与迭代 3.15 带空参数表的函数 3.16 内联函数 3.17 引用与引用参数 3.18 默认参数 ...

    C++大学教程

    第1章 计算机与C++编程简介-------------------------------------------------1 1.1 简介--------------------------------------------------------------1 1.2 什么是计算机--------------------------------...

    Java 中枚举类型简介与使用

    枚举简介 适用于初学Java

    TypeScript 教程

    简介 基本用法 any 类型 类型系统 数组 元组 symbol 类型 函数 对象 interface 类 泛型 Enum 类型 类型断言 模块 namespace 装饰器 装饰器(旧语法) declare 关键字 d.ts 类型声明文件 运算符 类型映射 类型工具 ...

    databaseSchema:史上最low BiHTML项目

    简介 目的是构造一个JSON文件,文件包含所有的表关系,服务可以获取该JSON文件来自定义自己的构造格式。 支持类型 支持数据库模型 支持枚举类型 字段的类型通过yml配置来维护 创建模型 创建数据库模型时不勾选是否为...

    commons-lang.jar

    中文简介: commons-lang.jar、Apache Commons包中的一个,包含了一些数据类型工具类,是java.lang.*的扩展。必须使用的jar包。 Jar文件包含的类: META-INF/MANIFEST.MFMETA-INF/LICENSE.txtMETA-INF/NOTICE....

    CTP期货实例

    综合交易平台API开发简介 大纲 1 Api概述 2 通用规则 3 交易业务 4 行情业务 综合交易平台Api包括交易Api和行情Api。交易Api建立在Tcp协议上,实现了客户端和综合交易平台之间的双向异步通讯。行情Api可以...

    Java课程英文讲义

    // If there were an enum in the class, it should also // be commented // /** * CodeUtil contains a handful of static methods * to handle a simple character-to-character cipher. */ public class ...

    简介

    您还可以使用ng generate directive|pipe|service|class|guard|interface|enum|module 。 建造 运行ng build来构建项目。 构建工件将存储在dist/目录中。 使用--prod标志进行生产构建。 运行单元测试 运行ng test...

    电信用户手册-ZXME MMSC多媒体消息中心 信令和协议_CTV1.0

    3.3 ENUM-DNS协议 3-2 3.4 ISMAP协议 3-3 3.5 HTTP协议 3-3 3.6 SMTP协议 3-7 3.7 SOAP协议 3-12 3.8 FTP/FTAM协议 3-17 第4章 信令流程 4-1 4.1 概述 4-1 4.2 终端到终端业务的流程(立即获取、有发送报告、有阅读...

    Cadastro-de-Estudantes:Angular简介-FATEC ITU

    您还可以使用ng generate directive|pipe|service|class|guard|interface|enum|module 。 建造 运行ng build来构建项目。 构建工件将存储在dist/目录中。 使用--prod标志进行生产构建。 运行单元测试 运行ng test以...

    阮一峰《C 语言教程》从入门到精通

    简介 基本语法 变量 运算符 流程控制 数据类型 指针 函数 数组 字符串 内存管理 struct 结构 typedef 命令 Union 结构 Enum 类型 预处理器 I-O 函数 文件操作 变量说明符 多文件项目 命令行环境 多字节字符 标准库 ...

    todos-tdd:[面向学生] Angular单元测试简介

    您还可以使用ng generate directive|pipe|service|class|guard|interface|enum|module 。 建造 运行ng build来构建项目。 构建工件将存储在dist/目录中。 使用--prod标志进行生产构建。 运行单元测试 运行ng test...

    东方基金会-Kotlin

    Avançandocom Enum,详细政策 枚举简介 Entensdendo sobre枚举-第1部分 Ennumdendo sobre枚举-第2部分 介绍摘要 Entredendo sobreabstraçõesnaprática-Parte 1 Entredendo sobreabstraçõesna

    java8源码-jdk8-source:jdk8-源代码

    简介 Java8源码学习 ├── com/ ├── java/(常用代码都在此文件夹下) │ ├── lang/ │ │ ├── ClassLoader │ │ ├── Enum │ │ ├── Integer │ │ ├── Long │ │ ├── String │ │ ├── ...

    intro-spring-angular-shop-fe:Spring Angular JWT简介店

    您还可以使用ng generate directive|pipe|service|class|guard|interface|enum|module 。 建造 运行ng build来构建项目。 构建工件将存储在dist/目录中。 使用--prod标志进行生产构建。 运行单元测试 运行ng test以...

    angular-material-introduction:Angular Material简介-本教程系列的代码

    您还可以使用ng generate directive|pipe|service|class|guard|interface|enum|module 。 建造 运行ng build来构建项目。 构建工件将存储在dist/目录中。 使用--prod标志进行生产构建。 运行单元测试 运行ng test以...

    Java大师级源码-Java8-Source-Code-master:jdk1.8源码,无注释版本

    简介 Java8源码学习 ├── com/ ├── java/(常用代码都在此文件夹下) │ ├── lang/ │ │ ├── ClassLoader │ │ ├── Enum │ │ ├── Integer │ │ ├── Long │ │ ├── String │ │ ├── ...

Global site tag (gtag.js) - Google Analytics