1. enum이란
: 제한된 값만을 갖는 열거형 데이터 타입으로 연관 있는 상수를 편하게 관리할 수 있게 해준다.
: 타입 안정성, 가독성, 관리의 용이, 성능 등의 이점이 있다.
* enum 사용의 이점
- 타입 안정성 : 특정 범위의 값만 사용하므로 컴파일 오류나 런타임 예외를 줄인다.
- 가독성 : 값들이 명시적으로 정의되어 있다.
- 관리의 용이 : 값의 추가나 변경이 한 곳에서 가능하여 코드의 유지보수가 용이하다.
- 성능 : 컴파일 시 정적인 값으로 변환되어 실행시간에 상수 검색의 오버헤드를 줄인다.
(1) 선언
: java 확장형을 가지며 class 대신 enum 키워드로 정의
: 열거상수는 대문자로 작성
ex. 요일(월, 화, 수, 목, 금, 토, 일)
=> 요일을 열거 type, 월~일을 열거상수라고 한다
//Week.java
public enum Week{
MON, TUE, WED, THU, FRI, SAT, SUN
}
(2) 객체 생성
: 열거상수가 열거 객체로 생성된다.
: 열거 타입도 데이터 타입의 일종으로 null 지정이 가능하다.
Week today = Week.MON;
(3) 필드 생성
: 상수와 연관된 추가적인 데이터를 상수 자체에 포함해 인스턴스의 필드를 생성할 수 있다.
: 상수이름 옆 ()를 사용해 정의
public enum Item{
RED("빨강“, 100)
BLUE("파랑”, 200);
private String itemNm;
private int itemCd;
Item(String itemNm, int itemCd){
this.itemNm = itemNm;
this.itemCd = itemCd;
}
public String getNm(){
return itemNm;
}
public int grtCd(){
return itemCd;
}
}
Item item = Item.RED.getCd(); //100
*출처
https://hudi.blog/java-enum/
https://honbabzone.com/java/java-enum/
'Language > JAVA' 카테고리의 다른 글
[JAVA] 옵저버 패턴 (Observer pattern) (0) | 2022.12.04 |
---|---|
[JAVA] 싱글톤 패턴 (Singleton pattern) (0) | 2022.12.04 |