IT·테크/개발

Java Wrapper 클래스 — 기본 타입을 객체로 다루는 박싱과 언박싱

레루루 2026. 7. 26. 20:00
반응형

Java Wrapper 클래스 — 기본 타입을 객체로 다루는 박싱과 언박싱

이 글은 2022년 5월 기준 기록입니다.

Java의 기본 타입은 객체가 아닙니다. 그래서 객체만 받는 자리에 int 값을 그대로 넣을 수 없습니다. 이 간극을 메우려고 제공되는 것이 Wrapper Class, 곧 포장 클래스입니다.

포장 클래스는 기본 타입을 객체로 감싸는 상자입니다

Wrapper 클래스는 기본 타입을 객체 타입으로 다루기 위해 제공되는 클래스입니다. 기능은 boxingunboxing을 통해 제공됩니다. 기본 타입 값을 포장 클래스 객체로 감싸는 것이 박싱이고, 감싼 객체에서 다시 기본 타입 값을 꺼내는 것이 언박싱입니다.

기본 타입 여덟 가지에는 각각 대응하는 포장 클래스가 하나씩 있습니다.

기본 타입 포장 클래스
byte Byte
char Character
short Short
int Integer
long Long
float Float
double Double
boolean Boolean

 

이름 규칙이 단순합니다. 대체로 기본 타입의 첫 글자를 대문자로 바꾼 것이고, intchar만 각각 Integer·Character로 이름이 늘어납니다.

parse 계열 메소드가 문자열을 값으로 되돌립니다

포장 클래스는 타입 변환을 위한 parse 메소드를 제공합니다. 문자열로 들어온 값을 해당 기본 타입의 값으로 바꿔 주는 자리입니다.

byte    num  = Byte.parseByte("10");
short   num  = Short.parseShort("100");
int     num  = Integer.parseInt("1000");
long    num  = Long.parseLong("10000");
float   num  = Float.parseFloat("2.5F");
double  num  = Double.parseDouble("3.5");
boolean bool = Boolean.parseBoolean("true");

 

메소드 이름이 parse + 기본 타입 이름 형태로 일관되어 있어, 대상 타입만 알면 메소드 이름이 바로 나옵니다.

숫자형 포장 클래스는 모두 Number를 부모로 둡니다

숫자를 담는 포장 클래스들은 서로 남남이 아닙니다. 모든 숫자형 Wrapper Class는 최상위 객체로 Number를 가집니다.

 

 

Byte·Short·Integer·Long·Float·DoubleNumber를 상속받는 구조입니다. 숫자형 포장 클래스라면 무엇이든 Number 타입 하나로 받을 수 있다는 뜻이기도 합니다.

반응형