• java之enum枚举(2015年05月28日)


    背景:
    今天启动了一个新的项目,由于要从之前的旧项目中拿过来一些代码,所以就看了下公司之前项目代码,发现有定义的常量类,也有枚举类,然后就在想着两者的功能差不多,那他们之间到底有什么区别呢,所以就决定了解下enum枚举
     
    一、简介
    Java 中的枚举类型采用关键字enum 来定义,从jdk1.5才有的新类型,所有的枚举类型都是继承自Enum 类型。
     
    二、基本用法
    1.作为常量使用
    一个完整的枚举类型示例
    /**
     * 枚举
     * @author Dreyer
     * @since 1.0
     * @date 2015-5-28 下午8:16:31
     */
    public enum EnumDemo1 {
     Small(1),
     Medium(2),
     Larger(3);
     
     private int code;
     
     private EnumDemo1 (int code) {
      this.code = code;
     }
     
     //作用相对于下面的toString()方法
     public int getCode () {
      return this.code;
     }
     
     @Override
     public String toString() {
      return String.valueOf(this.code);
     }
     
    }
     
    2.可以用于switch()语句
    EnumDemo1 size = EnumDemo1.Small;
     
     public void printInfo() {
      switch (size) {
      case Small:
       System.out.println("the size is small");
       break;
      case Medium:
       System.out.println("the size is medium");
       break;
      case Larger:
       System.out.println("the size is large");
       break;
      }
     }
     
     
    注意点:
    1.枚举类型的构造函数只能是private或者默认的修饰符
    2.所有的枚举值都是public static final修饰的,如同我们定义的常量一样
    3.枚举中可以定义普通方法
    4.枚举还能实现接口
     
    三、Enum和enum的区别
    Enum表示一个类,它里面封装了一下方法用于对枚举的基本操作
    enum表示一个变量类型,是一种数据类型,它用来定义枚举
     
     
    四、enum和常量的区别
    待更新...
     
     
    五、附加姿势
    因为看公司定义的常量类都是一个class,然后就public static final...
    在网上看到接口常量类觉得更不错,因为它是一个接口,所以里面的变量默认就是public static final修饰的
     
  • 相关阅读:
    Sketch Missing Fonts 页面样式混乱研究
    SFDC_01(google map)
    SFDC_02(google map)
    SFDC_04(system.debug();)
    umbraco简体中文语言包for4.5及以下版本
    7.22武汉日全食自拍留念
    IIS7(windows 2008)恐怖问题,大家谨慎,血的教训啊~~~~
    【视频】自己录制的Umbraco入门3——如何构建网站导航,推荐给玩CMS的朋友
    分享,个人代码知识管理程序
    【视频】自己录制的Umbraco入门2如果构建网页,推荐给玩CMS的朋友
  • 原文地址:https://www.cnblogs.com/Dreyer/p/4537341.html
Copyright © 2020-2023  润新知