TypeKind — 타입 종류 열거 클래스
TypeKind — 타입 종류 열거 클래스
TypeKind는 타입 미러(type mirror)의 종류를 나타내는 열거 클래스예요. TypeMirror.getKind()가 반환하는 값으로, 타입이 어떤 성격인지 판별할 때 써요.
미래 자바 언어 구조를 수용하기 위해 추가 타입 종류가 늘어날 수 있어요. Serializable, Comparable<TypeKind>, Constable을 구현해요.
본문
주요 상수는 BOOLEAN, BYTE, SHORT, INT, LONG, CHAR, FLOAT, DOUBLE(프리미티브), ARRAY, DECLARED, ERROR, TYPEVAR, WILDCARD, VOID, NULL, NONE, EXECUTABLE, INTERSECTION, UNION 등이에요.
선언은 다음과 같아요.
public enum TypeKind extends Enum<TypeKind>
주요 메서드는 다음과 같아요.
| Modifier and Type | Method | 설명 |
|---|---|---|
boolean |
isPrimitive() |
이 종류가 프리미티브 타입에 해당하면 true, 아니면 false. |
static TypeKind |
valueOf(String name) |
지정된 이름의 열거 상수를 반환해요. |
static TypeKind[] |
values() |
선언 순서대로 열거 상수 배열을 반환해요. |
TypeMirror t = ...;
switch (t.getKind()) {
case INT: // int
case BOOLEAN:
case DECLARED: //
case TYPEVAR: //
break;
}
예를 들어 BOOLEAN·BYTE는 프리미티브 차원이고, DECLARED는 클래스·인터페이스 타입, TYPEVAR는 타입 변수, WILDCARD는 와일드카드를 나타내요. Since: 1.6.