• enum


    https://docs.oracle.com/javase/specs/jls/se8/html/jls-8.html#jls-8.9

    The body of an enum declaration may contain enum constants. An enum constant defines an instance of the enum type.

    格式:

    [EnumConstantList] [,] [; {ClassBodyDeclaration}]

     语法:

    https://docs.oracle.com/javase/specs/jls/se8/html/jls-2.html

    The syntax {x} denotes zero or more occurrences of x.

    The syntax [x] denotes zero or one occurrences of x.

    // 简单的枚举
    enum SimpleEnum {
        RED, YELLOW, GREEN
    }
    
    // 复杂的枚举
    enum ComplexEnum {
        RED(255, 0, 0), YELLOW(255, 255, 0), GREEN(0, 255, 0);
    
        private final int r;
        private final int g;
        private final int b;
    
        ComplexEnum(int r, int g, int b) {
            this.r = r;
            this.g = g;
            this.b = b;
        }
    
        public int getR() {
            return r;
        }
    
        public int getG() {
            return g;
        }
    
        public int getB() {
            return b;
        }
    
    }

    测试:

        public static void main(String[] args) {
            
            System.out.println(SimpleEnum.GREEN);
            System.out.println();
            System.out.println(ComplexEnum.GREEN);
            System.out.println(ComplexEnum.GREEN.getR());
            System.out.println(ComplexEnum.GREEN.getG());
            System.out.println(ComplexEnum.GREEN.getB());
        }

    运行结果:

    GREEN
    
    GREEN
    0
    255
    0

    看着就像静态变量,如下是一个小测试:

    enum EnumTest {
        A, B, C;
    }
    E:>javac EnumTest.java
    
    E:>javap EnumTest.class
    Compiled from "EnumTest.java"
    final class EnumTest extends java.lang.Enum<EnumTest> {
      public static final EnumTest A;
      public static final EnumTest B;
      public static final EnumTest C;
      public static EnumTest[] values();
      public static EnumTest valueOf(java.lang.String);
      static {};
    }

    静态变量 (代码按照一定规则生成,逗号分隔简单明了;剩余部分和普通类基本一致 )

    静态块

    实例变量

    实例块

    构造函数

    。。。

  • 相关阅读:
    递归方程(续)
    递推方程
    协方差简单介绍
    排列组合
    牛顿法
    jquery常用方法总结
    RegExp的test()方法
    localStorage用法总结
    正则表达式
    登录页面按回车键实现登陆效果
  • 原文地址:https://www.cnblogs.com/zno2/p/6705314.html
Copyright © 2020-2023  润新知