Home > Java > JavaBase > body text

Detailed explanation of usage of java enumeration type enum

hzc
Release: 2020-06-17 15:18:16
Original
15983 people have browsed it

Detailed explanation of usage of java enumeration type enum

JDK1.5 introduces a new type - enumeration. Although it is a "small" function in Java, it brings "big" convenience to my development.

Senior brother, I will add my own understanding to help you understand.

Usage 1: Constants

Before JDK1.5, we defined constants as: public static final.... . Well, now with enumerations, related constants can be grouped into an enumeration type, and enumerations provide more methods than constants.

Java code

public enum Color {    RED, GREEN, BLANK, YELLOW  }
Copy after login

Usage 2: switch

The switch statement before JDK1.6 only supports int, char, enum types, using enumerations , can make our code more readable.

Java code

enum Signal {      
    GREEN, YELLOW, RED  
}  
public class TrafficLight {      
    Signal color = Signal.RED;
          public void change() { 
             switch (color) { 
               case RED:  
               color = Signal.GREEN;    
                 break;   
                 case YELLOW:              
                 color = Signal.RED;              
                     break;          
                 case GREEN:              
                 color = Signal.YELLOW;              
                     break;          
       }      
     }  
}
Copy after login

Usage three: Add new methods to the enumeration

If you plan to customize your own method, you must add it to the enum instance Add a semicolon at the end of the sequence. And Java requires that the enum instance must be defined first.

Java code

public enum Color {      
  RED("红色", 1), GREEN("绿色", 2), BLANK("白色", 3), YELLO("黄色", 4);      
  // 成员变量 
  private String name;      
  private int index;      
  // 构造方法     
  private Color(String name, int index) {        
  this.name = name;         
  this.index = index;     
 } 
 // 普通方法     
  public static String getName(int index) {        
     for (Color c : Color.values()) {              
           if (c.getIndex() == index) {                 
                 return c.name; 
      }          
   } 
    return null;     
 } 
 // get set 方法     
     public String getName() {       
        return name;
      } 
     public void setName(String name) {    
           this.name = name; 
     }      
     public int getIndex() {      
         return index; 
     }      
     public void setIndex(int index) { 
         this.index = index; 
     }  }  
}
Copy after login

Usage 4: Overriding the enumeration method

The following is an example of overriding the toString() method.

Java code

public enum Color {    
  RED("红色", 1), GREEN("绿色", 2), BLANK("白色", 3), YELLO("黄色", 4);      
  // 成员变量      
  private String name;      
    private int index;      
    // 构造方法     
    private Color(String name, int index) { 
        this.name = name;
        this.index = index; 
     }      
//覆盖方法      @Override      
    public String toString() {       
   return this.index+"_"+this.name;
  }  
 }
Copy after login

Usage five: Implement the interface

All enumerations inherit from the java.lang.Enum class. Since Java does not support multiple inheritance, enumeration objects cannot inherit from other classes.

Java code

public interface Behaviour {      
    void print();      
    String getInfo(); 
}  
public enum Color implements Behaviour{ 
    RED("红色", 1), GREEN("绿色", 2), BLANK("白色", 3), YELLO("黄色", 4);     
       // 成员变量   
    private String name;      
        private int index;      
        // 构造方法      
        private Color(String name, int index) { 
           this.name = name; 
       this.index = index;     
    } 
 //接口方法      
         @Override      
         public String getInfo() {
           return this.name; 
     }     
 //接口方法     
         @Override      
         public void print() {
          System.out.println(this.index+":"+this.name);
      }  
  }
Copy after login

Recommended tutorial: "java tutorial"

The above is the detailed content of Detailed explanation of usage of java enumeration type enum. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template