Java 매거진(enum) 7가지 일반적인 사용법 상세 설명

JDK1.5는 새로운 유형인 매거를 도입했다.자바에서 그것은 비록'작은'기능이지만 나의 개발에'큰'편의를 가져다 주었다.
용법1: 상량
JDK1.5 이전에 우리가 정의한 상수는 모두:public static fianl...이제 됐어. 매거가 생기면 관련 상량을 하나의 매거 유형으로 나눌 수 있고, 매거는 상량보다 더 많은 방법을 제공할 수 있어.

 public enum Color { 
  RED, GREEN, BLANK, YELLOW 
 } 
용법2:switch
JDK1.6 이전의 switch 문장은 int,char,enum 형식만 지원하였으며, 매거를 사용하면 우리의 코드를 더욱 읽을 수 있습니다.

 enum Signal { 
   GREEN, YELLOW, RED 
 } 
 public class TrafficLight { 
   Signal color = SignalRED; 
   public void change() { 
     switch (color) { 
     case RED: 
       color = SignalGREEN; 
       break; 
     case YELLOW: 
       color = SignalRED; 
       break; 
     case GREEN: 
       color = SignalYELLOW; 
       break; 
     } 
   } 
 } 
용법 3: 매거에 새로운 방법 추가
자신의 방법을 사용자 정의하려면, 엔움 실례 서열의 마지막에 번호를 추가해야 합니다.그리고 Java는 먼저 enum 인스턴스를 정의해야 합니다.

 public enum Color { 
   RED(" ", 1), GREEN(" ", 2), BLANK(" ", 3), YELLO(" ", 4); 
   //   
   private String name; 
   private int index; 
   //   
   private Color(String name, int index) { 
     thisname = name; 
     thisindex = index; 
   } 
   //   
   public static String getName(int index) { 
     for (Color c : Colorvalues()) { 
       if (cgetIndex() == index) { 
         return cname; 
       } 
     } 
     return null; 
   } 
   // get set   
   public String getName() { 
     return name; 
   } 
   public void setName(String name) { 
     thisname = name; 
   } 
   public int getIndex() { 
     return index; 
   } 
   public void setIndex(int index) { 
     thisindex = index; 
   } 
 } 
용법4: 매거를 덮어쓰는 방법
다음은 toString () 메서드를 덮어쓰는 예입니다.

 public enum Color { 
   RED(" ", 1), GREEN(" ", 2), BLANK(" ", 3), YELLO(" ", 4); 
   //   
   private String name; 
   private int index; 
   //   
   private Color(String name, int index) { 
     thisname = name; 
     thisindex = index; 
   } 
   //  
   @Override 
   public String toString() { 
     return thisindex+"_"+thisname; 
   } 
 } 
용법 5: 인터페이스 구현
모든 매거는 자바에서 계승된다.lang. Enum 클래스Java는 다중 상속을 지원하지 않기 때문에 열거 객체는 다른 클래스를 상속할 수 없습니다.

 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) { 
     thisname = name; 
     thisindex = index; 
   } 
 //  
   @Override 
   public String getInfo() { 
     return thisname; 
   } 
   //  
   @Override 
   public void print() { 
     Systemoutprintln(thisindex+":"+thisname); 
   } 
 } 
용법6: 인터페이스 조직 매거 사용하기

public interface Food { 
   enum Coffee implements Food{ 
     BLACK_COFFEE,DECAF_COFFEE,LATTE,CAPPUCCINO 
   } 
   enum Dessert implements Food{ 
     FRUIT, CAKE, GELATO 
   } 
 } 
용법7: 매거 집합의 사용에 관하여
java.util.EnumSet 및 java.util.EnumMap은 두 개의 열거 집합입니다.EnumSet은 컬렉션의 요소가 중복되지 않도록 합니다.EnumMap의 키는 enum 형식이고 value는 임의의 형식일 수 있습니다.이 두 집합의 사용에 관해서는 여기에 군더더기 없이 JDK 문서를 참고할 수 있습니다.
매거진의 실현 세부 사항과 원리에 대해서는 참고하십시오.
참고 자료: Thinking InJava 제4판https://www.jb51.net/books/75540.html
이상은 본문의 전체 내용입니다. 여러분의 학습에 도움이 되고 저희를 많이 응원해 주십시오.

좋은 웹페이지 즐겨찾기