• java自学


    1

    Java 枚举是一个特殊的类,一般表示一组常量,比如一年的 4 个季节,一个年的 12 个月份,一个星期的 7 天,方向有东南西北等。

    Java 枚举类使用 enum 关键字来定义,各个常量使用逗号 , 来分割。

    例如定义一个颜色的枚举类。

    enum Color 
    { 
        RED, GREEN, BLUE; 
    } 

    枚举类也可以声明在内部类中

    复制代码
    public class Test 
    { 
        enum Color 
        { 
            RED, GREEN, BLUE; 
        } 
      
        // 执行输出结果
        public static void main(String[] args) 
        { 
            Color c1 = Color.RED; 
            System.out.println(c1); 
        } 
    }
    复制代码

    每个枚举都是通过 Class 在内部实现的,且所有的枚举值都是 public static final 的。

    以上的枚举类 Color 转化在内部类实现:

    class Color
    {
         public static final Color RED = new Color();
         public static final Color BLUE = new Color();
         public static final Color GREEN = new Color();
    }

    可以使用 for 语句来迭代枚举元素

    复制代码
    enum Color 
    { 
        RED, GREEN, BLUE; 
    } 
    public class MyClass { 
      public static void main(String[] args) { 
        for (Color myVar : Color.values()) {
          System.out.println(myVar);
        }
      } 
    }
    复制代码

    枚举类常应用于 switch 语句中:

    复制代码
    enum Color 
    { 
        RED, GREEN, BLUE; 
    } 
    public class MyClass {
      public static void main(String[] args) {
        Color myVar = Color.BLUE;
    
        switch(myVar) {
          case RED:
            System.out.println("红色");
            break;
          case GREEN:
             System.out.println("绿色");
            break;
          case BLUE:
            System.out.println("蓝色");
            break;
        }
      }
    }
    复制代码

    枚举跟普通类一样可以用自己的变量、方法和构造函数,构造函数只能使用 private 访问修饰符,所以外部无法调用。

    枚举既可以包含具体方法,也可以包含抽象方法。 如果枚举类具有抽象方法,则枚举类的每个实例都必须实现它

    复制代码
    enum Color 
    { 
        RED, GREEN, BLUE; 
      
        // 构造函数
        private Color() 
        { 
            System.out.println("Constructor called for : " + this.toString()); 
        } 
      
        public void colorInfo() 
        { 
            System.out.println("Universal Color"); 
        } 
    } 
      
    public class Test 
    {     
        // 输出
        public static void main(String[] args) 
        { 
            Color c1 = Color.RED; 
            System.out.println(c1); 
            c1.colorInfo(); 
        } 
    } 
    复制代码

    enum Color 

        RED, GREEN, BLUE; 

    public class MyClass { 
      public static void main(String[] args) { 
        for (Color myVar : Color.values()) {
          System.out.println(myVar);
        }
      } 
    }

    2.暂无问题

    3.学习web

  • 相关阅读:
    哪有什么互联网寒冬?只是你穿的少而已!
    我不是机器人:谷歌最新版验证码系统ReCaptcha破解已开源
    Gradle更小、更快构建APP的奇淫技巧
    一篇文章让你了解Android各个版本的历程
    快速开发android,离不开这10个优秀的开源项目
    年底Android面试整理(附答案)
    最近Android真的凉凉了?
    Android 应用防止被二次打包指南
    开发了5年android,我开始了go学习之旅
    做了5年的Android,我转Java后台了!
  • 原文地址:https://www.cnblogs.com/20193898liufa/p/14162969.html
Copyright © 2020-2023  润新知