ENUM
자바는 타입 안전 열거형 패턴"(Type-Safe Enum Pattern)을 매우 편리하게 사용할 수 있는 열거형(Enum Type)을 제공한다.
쉽게 이야기해서 자바의 열거형은 앞서 배운 타입 안전 열거형 패턴을 쉽게 사용할 수 있도록 프로그래밍 언어에서 지원 하는 것이다.
영어인 `enum` 은 `enumeration` 의 줄임말인데, 번역하면 열거라는 뜻이고, 어떤 항목을 나열하는 것을 뜻한다. "Enumeration"은 일련의 명명된 상수들의 집합을 정의하는 것을 의미하며, 프로그래밍에서는 이러한 상수들을 사용하 여 코드 내에서 미리 정의된 값들의 집합을 나타낸다.
주요 메서드
- values()**: 모든 ENUM 상수를 포함하는 배열을 반환한다.
- valueOf(String name)**: 주어진 이름과 일치하는 ENUM 상수를 반환한다.
- name()**: ENUM 상수의 이름을 문자열로 반환한다.
- ordinal()**: ENUM 상수의 선언 순서(0부터 시작)를 반환한다.
- toString()**: ENUM 상수의 이름을 문자열로 반환한다. `name()` 메서드와 유사하지만, `toString()` 은 직접 오버라이드 할 수 있다.
주의 ordinal()은 가급적 사용하지 않는 것이 좋다.
- ordinal()의 값은 가급적 사용하지 않는 것이 좋다. 왜냐하면 이 값을 사용하다가 중간에 상수를 선언하는 위치가 변경되면 전체 상수의 위치가 모두 변경될 수 있기 때문이다.
문제 풀이
인증 등급 만들기
패키지의 위치는 `enumeration.test` 를 사용하자.
회원의 인증 등급을 `AuthGrade` 라는 이름의 열거형으로 만들어라.
인증 등급은 다음 3가지이고, 인증 등급에 따른 레벨과 설명을 가진다. 레벨과 설명을 `getXxx()` 메서드로 조회할 수 있어야 한다.
인증 등급 열거형 조회하기
AuthGradeMain1` 이라는 클래스를 만들고 다음 결과가 출력되도록 코드를 작성해라.
앞서 만든 `AuthGrade` 을 활용하자
인증 등급 열거형 활용하기
- 인증 등급을 입력 받아서 앞서 만든 `AuthGrade` 열거형으로 변환하자.
- 인증 등급에 따라 접근할 수 있는 화면이 다르다.
예를 들어 GUEST 등급은 메인 화면만 접근할 수 있고, ADMIN 등급은 모든 화면에 접근할 수 있다.
각각의 등급에 따라서 출력되는 메뉴 목록이 달라진다. 다음 출력 결과를 참고해서 코드를 완성하자.
문제 풀이 2
문제 설명
enumeration.test.http` 패키지를 사용하자.
HttpStatus` 열거형을 만들어라.
- HTTP 상태 코드 정의
`OK`
code: 200
message: "OK"
`BAD_REQUEST`
code: 400
message: "Bad Request"
'NOT_FOUND`
code: 404
message: "Not Found" `
INTERNAL_SERVER_ERROR`
code: 500
message: "Internal Server Error" - **참고**: HTTP 상태 코드는 200 ~ 299사이의 숫자를 성공으로 인정한다.
'언어 기초 > JAVA' 카테고리의 다른 글
날짜와 시간 [JAVA | 학습을 위한 자료 | 김영한 자바 중급 1편] (0) | 2024.10.13 |
---|---|
래퍼, Class클래스 [JAVA | 학습을 위한 자료 | 김영한 자바 중급 1편] (2) | 2024.10.10 |
String클래스 [JAVA | 학습을 위한 자료 | 김영한 자바 중급 1편] (5) | 2024.09.17 |
불변객체 [JAVA | 학습을 위한 자료 | 김영한 자바 중급 1편] (2) | 2024.09.15 |
Object클래스 [JAVA | 학습을 위한 자료 | 김영한 자바 중급 1편] (3) | 2024.09.15 |