Enum의 기본형을 먼저 보고 오시면 더 좋습니다.
이번에는 Enum에 인스턴스 변수를 적용해서 사용하는 방법을 알아보자.
사용 법은 Enum상수에 소괄호를 붙여 인스턴스 변수를 추가하는 것인데, 소괄호 안에 있는 것은 표기만 다를 뿐 같은 뜻을 지닌 것들을 Enum을 통해서 묶어준 것이다.
RPG 게임으로 생각해보자!
RPG게임은 무기가 많이 있을 테고 DB에서 종류별로 나눠서 관리 한다.
보통 DB에 무기 종류를 'gun, sowrd, spear'보단 '0, 1, 2'같이 정수로 관리 할텐데, 그렇다고 클라이언트 화면에 0, 1, 2 라고 띄우면 누가 알아볼까?
이럴 때 enum을 사용해보자!
Enum에 인스턴스 변수를 활용한 코드다.
DB에서 넘겨 받은 int 타입을 transTypeToKr()메소드에서 String으로 변환해줬다.
일부러 kr이란 변수를 사용했는데 다국어 서비스를 제공 하고 싶다면 en, jp등 더 추가해서 사용해보자!
Enum 타입에 인스턴스 변수를 사용하려면 반드시 필요한게 2가지 있다.
1. 모든 매개변수가 있는 생성자가 필요.
2. 인스턴스 변수의 값을 가져오는 getter()가 필요.
한줄 평 : Enum을 통해 파편화된 공통값들을 모아보자!
참고 -
https://www.geeksforgeeks.org/enum-customized-value-java/
소중한 정보 잘 봤습니다!