zoukankan      html  css  js  c++  java
  • java枚举enum总结大全

    1.注意点

    (1)枚举中的构造方法必须是private的。

    (2)枚举中可以定义抽象方法和一般方法,但枚举对象必须实现所有抽象方法。

    (3)枚举对象必须放在第一行。

     1 package classTwo01;
     2 
     3 public enum Colors {
     4 
     5     RED{
     6         @Override
     7         public void setName(String name) {
     8             this.name=name;
     9         }
    10         
    11     },BLUE{
    12         @Override
    13         public void setName(String name) {
    14             this.name=name;
    15         }
    16         
    17     };
    18     
    19     public String name; 
    20     
    21     private Colors(){
    22         
    23     }
    24 //    private Colors(String name){
    25 //        this.name=name;
    26 //    }
    27 //    
    28     public String getName() {
    29         return name;
    30     }
    31     
    32     public abstract void setName(String name);
    33 }
     1 package classTwo01;
     2 
     3 public class Test {
     4 
     5     public static void main(String[] args) {
     6         Colors.BLUE.setName("绿色");
     7         String color=Colors.BLUE.getName();
     8         System.out.println(color);
     9     }
    10 }

    (3)枚举中values()方法是获取所有的枚举对象,使为一个数组,然后通过forEach循环输出。

     1 package classTwo01;
     2 
     3 public enum Colors {
     4 
     5     RED(1,"红色"),BLUE(2,"蓝色");
     6     
     7     private int id;
     8     private String name;
     9     
    10     Colors(int id,String name){
    11         this.id=id;
    12         this.name=name;
    13     }
    14     
    15     public int getId() {
    16         return id;
    17     }
    18     public String getName() {
    19         return name;
    20     }
    21     
    22 }
    package classTwo01;
    
    import java.util.Iterator;
    
    public class Test {
    
        public static void main(String[] args) {
            Colors[] colors=Colors.values();
            for (Colors color : colors) {
                System.out.println(color.getId()+":"+color.getName());
            }
        }
    }

     我们知道switch()括号中可以使byte short int char String enum  那么枚举该怎么用呢,看下面实例

     1 public static void switchTest(Colors color) {
     2         switch (color){
     3             case RED:{
     4                 System.out.println("红色");
     5                 break;
     6             }
     7             case BLUE:{
     8                 System.out.println("蓝色");
     9                 break;
    10             }
    11             default:{
    12                 break;
    13             }
    14         }
    15     }

     枚举定义的模板: 1:枚举变量  (必须放在第一行的位置)(可多个)

             2:成员变量(可多个)

               3:静态或非静态方法(可多个)

             4:构造方法(可多个)

             5:普通方法(可多个)

             6:抽象方法(可多个)

  • 相关阅读:
    NGINX 代理以及 HTTPS (一)
    HTTP 各种特性应用(二)
    HTTP 各种特性应用(一)
    HTTP 协议基础及发展历史
    添加 表格
    C# 利用反射和特性 来做一些事情
    HTTP 与 HTTPS
    系统登录详解
    js表单提交到后台对象接收
    idea插件
  • 原文地址:https://www.cnblogs.com/lyxcode/p/9366525.html
Copyright © 2011-2022 走看看