首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Java 枚举类型 enum

以下使用 JDK 版本为:1.8.0_121 枚举类型的引入 枚举类型Java 5 中增加的一个小特性,在此之前,实现枚举的方式为定义编译期常量形式。...枚举类型的表示为: enum Season{ SPRING, SUMMER, AUTUMN, WINTER; } 根据类型的定义可以看出两者存在明显的差异,枚举类型的实例摆脱了数值的限制,能够以实例自身表达其作用和目的...枚举类型的使用 enum 关键字与常用的 class 关键字作用相似,用于完成对类结构的定义,所以 enum 可以作为一种特殊的类定义方式理解。...定义过程与 class 的定义类过程基本相同,同样提供有属性和方法的定义,不同之处在于 enum 定义的类默认继承了 Enum 类,因为 Java 不允许多继承,所以使用 enum 定义的类不能再继承其它类...; } } } 输出为: second season 枚举类中实现接口函数 枚举类型隐式继承了 Enum 类,所以不能再继承其他类,通过实现接口,可以将实现了同一个接口的多个枚举类型作为同一类

1.3K32

枚举类型enum用法(enum类型)

Java5新增了enum 关键字(与calss、interface 关键字用法相同),用来定义枚举类。 【2】为什么需要枚举类?...【3】枚举类的语法 (1) 枚举类默认继承 java.lang.Enum 类,而不是 Object 类,因此枚举类不能显示继承其他父类。...【4】枚举类的方法和用法 (1)JDK 1.5中switch对枚举的扩展 switch( )的控制表达式(即括号中的条件)可以是任何枚举类型;当switch控制表达式使用枚举类型时...(3)所有枚举类都继承了 java.lang.Enum 抽象类,所以枚举类可以直接使用 java.lang.Enum 类中所包含的方法 //java.lang.Enum package java.lang...java.io.ObjectInputStream; import java.io.ObjectStreamException; public abstract class Enum<E extends

3K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    java枚举类型enum的使用

    最近跟同事讨论问题的时候,突然同事提到我们为什么java 中定义的常量值不采用enmu 枚举类型,而采用public final static 类型来定义呢?...Java 中的枚举类型采用关键字enum 来定义,从jdk1.5才有的新类型,所有的枚举类型都是继承自Enum 类型。...要了解枚举类型,建议大家先打开jdk 中的Enum类简单读一下,这个类里面定义了很多protected 方法,比如构造函数,如果要使用这些方法我们可以把枚举类型定义到当前类中。...首先给Light 枚举类型增加构造方法,然后每个枚举类型的值通过构造函数传入对应的参数,同时覆写toString 方法,在该方法中返回从构造函数中传入的参数,改造后的代码如下: public enum...可以创建一个enum 类,把它看做一个普通的类。除了它不能继承其他类了。(java 是单继承,它已经继承了Enum), 可以添加其他方法,覆盖它本身的方法 3.

    1.2K100

    JAVA枚举类型Enum)的使用

    这个时候就体现出枚举类的作用了,java枚举类型就是针对这样的场景需求所设计的。.../** * 枚举类的后缀建议为Enum枚举类型的实例对象建议全大写(这样做符合JAVA的规范) */ public enum SeasonEnum{ SPRING,SUMMER,AUTUMN...其实枚举类型可以看做我们平时新建.java差不多,只是枚举类限制了此类的实例对象。当然,枚举类可以有自己的成员变量和方法。...好了,关于枚举类型的初步使用就到这里了。...如果想看它更多用法请参考下面的链接 更多用法请参考这篇Java 枚举(enum) 详解7种常见的用法_请叫我大师兄_的博客-CSDN博客_java 枚举的定义与用法 版权声明:本文内容由互联网用户自发贡献

    1.3K20

    Java 枚举类型enum 的使用

    Java 枚举类型enum 的使用 最近跟同事讨论问题的时候,突然同事提到我们为什么java 中定义的常量值不采用enmu 枚举类型,而采用public final static 类型来定义呢?...Java 中的枚举类型采用关键字enum 来定义,从jdk1.5才有的新类型,所有的枚举类型都是继承自Enum 类型。...要了解枚举类型,建议大家先打开jdk 中的Enum 类简单读一下,这个类里面定义了很多protected 方法,比如构造函数,如果要使用这些方法我们可以把枚举类型定义到当前类中。...首先给Light 枚举类型增加构造方法,然后每个枚举类型的值通过构造函数传入对应的参数,同时覆写toString 方法,在该方法中返回从构造函数中传入的参数,改造后的代码如下: public enum...可以创建一个enum 类,把它看做一个普通的类。除了它不能继承其他类了。(java 是单继承,它已经继承了Enum), 可以添加其他方法,覆盖它本身的方法 3.

    1.3K91

    java枚举类型enum用法(java定义枚举常量类)

    文章目录 枚举类的使用 如何定义枚举类 方式一:jdk5.0之前,自定义枚举类 方式二:jdk5.0,可以使用enum关键字定义枚举Enum类的主要方法 toString() values() valueOf...(String objName) 使用enum关键字定义的枚举类实现接口的 情况一:实现接口,在enum类中实现抽象方法 情况二:让枚举类的对象分别实现接口中的抽象方法 枚举类的使用 枚举类的理解:类的对象只有有限个...关键字定义枚举类 使用 enum 定义的枚举类默认继承了 java.lang.Enum类,因此不能再继承其他类 枚举类的构造器只能使用 private 权限修饰符 枚举类的所有实例必须在枚举类中显式列出...列出的实例系统会自动添加 public static final 修饰 必须在枚举类的第一行声明枚举类对象 enum Season1 implements Info{ //1.提供当前枚举类的对象...// Season1 winter = Season1.valueOf("WINTER1"); System.out.println(winter); 使用enum关键字定义的枚举类实现接口的情况

    3.7K20

    Python 枚举类型 Enum

    实际开发中,我们离不开定义各种类型,当我们需要定义类型时,一般是通过一组整数来定义。...1d = {"jan": 1, "feb": 2, "mar": 2} 对于这种情况,在 Python3.4 之后,给我们增加了枚举类,枚举类型可以看作是一种标签或是一系列常量的集合,通常用于表示某些特定的有限集合...,例如星期、月份、状态等 枚举类 简单示例: 1from enum import Enum 2 3class Color(Enum): 4 RED = 1 5 GREEN = 2 6...如果你不想让枚举类中有相同的 value 值,Enum 也提供了的相应的处理方法 1from enum import Enum 2from enum import unique 3 4@unique...枚举类型转换 枚举最大的好处,就是增加了我们代码的可读性 1if a ==1: 2 pass 3elif a == 2: 4 pass 上面代码可读性就很差,因为我们并不知道 1、2 所代表的含义。

    1.2K30

    【C语言】枚举类型(enum)

    前言 在本文,我们将学习一个自定义的类型——枚举。相信很多读者听到这个并不会感觉到陌生,那么本文就来着重跟大家聊一聊何为枚举类型,能用枚举类型干什么事。 话不多说,让我们开始本次精彩的学习吧!...枚举类型的声明 在讲完枚举的含义之后,我们就来认识一下,在C语言中是如何声明一个枚举类型的。...enum Color { RED, GREEN, BLUE }; 注意:这里跟结构体的声明还是有点差别的,请读者在声明枚举类型时注意细节。...以上定义的enum Day,enum Sex,enum Color都是枚举类型。 {}里面的值就是枚举类型可能取值,也叫做枚举常量。 这些可能的取值都是有值的,默认是从0开始,依次递增1。...枚举类型的使用 enum Color { RED, GREEN, BLUE }; enum Color clr = GREEN;//使用枚举常量给枚举变量赋值 注意:一旦枚举常量的值确定下来之后

    7510

    C++枚举类型enumenum class

    参考链接: C++枚举 文章目录  一.关于枚举类型二.枚举类型enum的使用三.枚举类型enum class的使用 一.关于枚举类型   1. 什么是枚举类型? ...所谓”枚举”是指将变量的值一一列举出来,变量的值只能在列举出来的值的范围内。在C++中,枚举类型分为不限定作用域(enum)和限定作用域(enum class)。   ...2. enumenum class的区别? (为什么需要限定作用域?)  答:枚举作用域是指枚举类型成员名字的作用域,起自其声明之处,终止枚举定义结束之处。...enum与class enum区别在于是否限定其作用域。C语言规定,枚举类型enum)的成员的可见范围被提升至该枚举类型所在的作用域内。...三.枚举类型enum class的使用  定义:  enum class/*枚举类型*/  {     /*枚举成员*/,                     /*枚举成员*/,

    4.6K41

    Python枚举类型Enum用法

    枚举类型可以看作是一种标签或是一系列常量的集合,通常用于表示某些特定的有限集合。...Key 都会当做别名 在枚举类中,可以有相同值,但是后面的枚举项都是第一个的别名 from enum import Enum class Color(Enum): RED = 1 BLUE...=1 GREEN = 2 BLOCK = 3 print(Color.BLUE) 结果: Color.RED 从结果中可以看到,输出的是 Color.RED 这个类型,而不是 Color.BLUE...如果你不想让枚举类中有相同的 value 值,Enum 也提供了的相应的处理方法 from enum import Enum from enum import unique @unique class...除了通过继承 Enum 类的方法创建枚举类,还可以使用 Enum() 函数创建枚举类 from enum import Enum #创建一个枚举类 Color = Enum("Color",('red'

    30110

    开发中巧用Enum枚举类型

    (这一类型表状态的字段可能还会有很多,这里只是举个例) 我们一般会把这个State字段当成一个约定,去在项目中应用(比如:0:启用,1:禁用) 在后台管理或其它地方显示Int类型对应的实际状态时,再到公共类中去写一个方法...但是我习惯于用一个Enum枚举去规范数据库去所有的State字段,Enum的使用,也更利于开发,可以分别对枚举注释,约定可以呈现在开发人员眼前,而不是直接凭空约定。下面分享一下我对Enum类的使用。...1.首先,我们可以对枚举类型建立一个实体类:ReadEnum public class ReadEnum { public string Name { get; set; }...第三步:对所有Enum写一些应用方法 #region##获得Enum类型description /// /// 获得Enum类型description.../// 创建人:Porschev /// 创建时间:2011-7-19 /// ///枚举类型

    91070

    Java中的枚举Enum

    Java没有提供枚举的时候,比如我们要使用一个表示周几的枚举值怎么办? Java中是这样解决的:定义一个私有的构造函数,然后在类中new出对象来。...public enum Date { Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday; } 如果我要定义这样一个枚举类,让它能够返回对应日期的中文怎么办...public enum Date { Sunday("星期天"), Monday("星期天"), Tuesday("星期天"), Wednesday("星期天"), Thursday( "星期天...中枚举的总结: 1.枚举也是一种特殊形式的Java类 2.枚举类中声明的每一个枚举值代表枚举类的一个实例对象 3.与Java中普通类一样,在声明枚举类时,也可以声明属性、方法构造函数,但枚举类的构造函数必须为私有的...4.枚举类也可以实现接口,或继承抽象类 5.若枚举只有一个枚举值,则可以当做单态设计模式使用 最后需要明确的是: Java中声明枚举类,均是java.lang.Enum类的子类,它继承了Enum

    1.1K20

    java 枚举(enum) 全面解读

    简介 枚举Java1.5引入的新特性,通过关键字enum来定义枚举类。枚举类是一种特殊类,它和普通类一样可以使用构造器、定义成员变量和方法,也能实现一个或多个接口,但枚举类不能继承其他类....Enum类接受一个继承自Enum的泛型.(在反编译java文件中没有体现泛型是因为,泛型在阶段就会被类型类型擦除,替换为具体的实现.)....:417) at Main.reflect(Main.java:24) at Main.main(Main.java:13) 枚举类的特点总结 枚举实例必须在 enum关键字声明的类中显式的指定...复杂的枚举 EnumSet,EnumMap并不常用,这里不做过多解释,想了解的可以参考 深入理解Java枚举类型(enum) 引用 Android Performance: Avoid using ENUM...on Android 深入理解Java枚举类型(enum) Java 枚举会比静态常量更消耗内存吗 Should I strictly avoid using enums on Android?

    89510
    领券