规范必备:枚举类型

1、这是个啥?

  枚举类型在C#或C++,java,VB等一些计算机编程语言中是一种基本数据类型而不是构造数据类型,而在C语言等计算机编程语言中是一种构造数据类型,它用于声明一组命名的常数,当一个变量有几种可能的取值时,可以将它定义为枚举类型。

  枚举可以根据Integer、Long、Short或Byte中的任意一种数据类型来创建一种新型变量。这种变量能设置为已经定义的一组之中的一个,有效地防止用户提供无效值。该变量可使代码更加清晰,因为它可以描述特定的值。

2、单独建一个类定义枚举类型,代码:

package com.xxx.xxx.common.util;
@Name("ZwfwConstant")
@Scope(ScopeType.EVENT)
public class EnumerationTypeConstant {
     /**
     * 1和0常量
     */
    public static final String CONSTANT_STR_ONE = "1";
    public static final String CONSTANT_STR_ZERO = "0";
    public static final int CONSTANT_INT_ONE = 1;
    public static final int CONSTANT_INT_ZERO = 0;

    /**
     * 办件状态
     */
    public static final int BANJIAN_STATUS_WWINIT = 8;// 外网申报初始化
    public static final int BANJIAN_STATUS_WWWTJ = 10;// 外网申报未提交
    public static final int BANJIAN_STATUS_WWYTJ = 12;// 外网申报已提交
    public static final int BANJIAN_STATUS_WWYSTU = 14;// 外网申报预审退回
    public static final int BANJIAN_STATUS_WWYSTG = 16;// 外网申报预审通过

}

3、定义成员变量时为啥是 public static final 修饰?

public: 其他模块的其他类都可以调用使用这个常量
static:static修饰就表示它属于类的,随类的加载而存在的,如果是非static的话,
      就表示属于对象的,只有建立对象时才有它,
final:final修饰就是保证不能被实现类去修改,如果没有final的话,
      由子类随意去修改的话,建立这个常量就没有意义了,就又不规范了!

原文地址:https://www.cnblogs.com/wmqiang/p/10516899.html

时间: 2024-10-07 19:00:23

规范必备:枚举类型的相关文章

Java基础教程:枚举类型

Java基础教程:枚举类型 枚举类型 枚举是将一具有类似特性的值归纳在一起的方法.比如,我们可以将周一到周日设计为一个枚举类型.彩虹的七种颜色设计为一个枚举类型. 常量实现枚举 我们通过定义常量的方式来实现,如下: Public static class RainbowColor { // 红橙黄绿青蓝紫七种颜色的常量定义 public static final int RED = 0; public static final int ORANGE = 1; public static fina

Java枚举类型enum

枚举的语法 1.Enum的全称为enumeration,中文俗称枚举类,学过C/C++等语言的人,应该都对它略知一二. 但在Java语言规范中,是在JDK 5版本中才引入的,存放在 java.lang 包中.在Java版的Enum实质是语法糖,其声明方式如下: [代码1] package com.enumtest; public enum Color { RED,BLUE,BLACK,YELLOW,GREEN //注意这里可以没有分号 } enum是用来声明枚举的关键字,声明定义的类都隐含继承了

Swift2.0(6)结构体类型&枚举类型

结构体类型 基础数据类型都是结构体,如Int  Float Bool等,是Swift自带的并且作为开发基础供开发者使用 在Swift中,结构体(Struct)和类类型(Class)非常相似,结构体是值类型,类是引用类型. 定义格式: struct 名称 : 协议... { 属性和方法 } 如: struct Sword { var length:Int = 11 var name:String = "hello world" func description() { print(&qu

开发中巧用Enum枚举类型

在实际开发中,在数据库表设计中,我们往往习惯于用一个Int类型的State字段去表示数据的状态,这个字段很方便去表示这条数据的状态,但是又不愿意去建一张这个State字段的外键表去解释状态.(这一类型表状态的字段可能还会有很多,这里只是举个例)   我们一般会把这个State字段当成一个约定,去在项目中应用(比如:0:启用,1:禁用) 在后台管理或其它地方显示Int类型对应的实际状态时,再到公共类中去写一个方法,里面用一个switch...case去返回对应的中文解释. http://www.d

深度分析Java的枚举类型—-枚举的线程安全性及序列化问题

原文:深度分析Java的枚举类型--枚举的线程安全性及序列化问题 枚举是如何保证线程安全的 要想看源码,首先得有一个类吧,那么枚举类型到底是什么类呢?是enum吗?答案很明显不是,enum就和class一样,只是一个关键字,他并不是一个类,那么枚举是由什么类维护的呢,我们简单的写一个枚举: public enum t { SPRING,SUMMER,AUTUMN,WINTER; } 然后我们使用反编译,看看这段代码到底是怎么实现的,反编译(Java的反编译)后代码内容如下: public fin

Java枚举类型在后台响应中的使用

在前后台分离开发过程中,统一响应的格式可以使用枚举类型进行规范开发,对于不同的错误/异常类型可以响应不同的状态码和响应信息. 1,枚举类型的简单理解:枚举类型就是包含了有限个枚举对象集合的类,而枚举对象就是集合中其中一个,可以使用枚举类名直接调用. 需要注意的是: 1)枚举类型不能被继承或者实现 2)枚举类型的构造方法是私有方法,因为枚举类型的对象已经在类中列举了,且是有限了,不能创建对象 2,枚举类型响应码举例: import lombok.ToString; @ToString public

C#枚举类型的常用操作总结

枚举类型是定义了一组"符号名称/值"配对.枚举类型是强类型的.每个枚举类型都是从system.Enum派生,又从system.ValueType派生,而system.ValueType又从system.Object派生,所以枚举类型是指类型. 编译枚举类型时,C#编译器会把每个符号转换成类型的一个常量字段.C#编译器将枚举类型视为基元类型. 1.获取枚举列表:         /// <summary>         /// 获取枚举列表         /// <

获取枚举类型Description特性的描述信息

C#中可以对枚举类型用Description特性描述. 如果需要对Description信息获取,那么可以定义一个扩展方法来实现.代码如下: public static class EnumExtensions { public static string GetDescription(this object value) { if (value==null) return string.Empty; Type type = value.GetType(); var fieldInfo = ty

C++ Primer 笔记——枚举类型

1.和类一样,每个枚举类型定义了一种新的类型.枚举属于字面值常量类型. 2.C++包含两种枚举:限定作用域的和不限定作用域的.C++11新标准引入了限定作用域的枚举类型. enum class /*struct*/ MyEnum { A = 0}; // 限定作用域的枚举 enum class /*struct*/ MyEnum1 { A = 0 }; // 限定作用域的枚举可以有重复的名字,使用时也必须加上作用域 enum MyEnum2 { B = 0 }; // 不限定作用域的枚举 enu