반응형
포장 객체란?
자바에서는 기본 타입과 참조 타입이 있다. 이 중 기본 타입의 값을 가지고 있는 객체를 생성할 수 있는데 이런 객체들이 바로 포장 객체이다.
이러한 포장 객체들을 사용하는 목적은 기본 타입의 값 변경이 아닌 객체로 생성하는 것이다.
기본타입과 포장 클래스 매치
기본 타입 | 포장 클래스 |
byte | Byte |
char | Character |
short | Short |
int | Integer |
long | Long |
float | Float |
double | Double |
boolean | Boolean |
박싱 vs 언박싱
박싱 : 기본 타입의 값을 포장 객체로 만드는 것
언박싱 : 포장 객체에서 기본 타입의 값을 얻어내는 것
//박싱
Integer value1 = 1;
//언박싱
int value2 = value1;
포장 클래스 사용하는 이유
- 기본 자료형을 객체로 다룰 수 있게 함
- 포장 클래스는 기본 자료형을 객체로 감싸서 추가적인 기능과 메소드 제공
- 제네릭과 컬렉션에서 사용
- 기본 자료형은 제네릭에서 사용 불가하기 때문에 포장 클래스를 사용하여 기본 자료형을 객체로 포장하고 제네릭과 컬렉션에서 다룰 수 있음
- 객체 간 호환성 제공
- 객체만을 다루는 상황에서 기본 자료형을 사용하면 호환성이 제한되지만 포장 클래스를 사용하면 기본 자료형을 객체로 감싸서 전달할 수 있고 호환성도 확보 가능
- 널(Null)값 처리
- 기본 자료형은 null값을 가질 수 없지만 포장 클래스는 객체이기 때문에 null값을 가질 수 있으며 이를 활용해서 메소드의 반환값, 컬렉션의 요소로 null값을 다룰 수 있음
반응형
'개발 > JAVA' 카테고리의 다른 글
소스파일명과 동일한 클래스에만 public을 붙일 수 있는 이유 (0) | 2023.05.29 |
---|---|
자바에서의 메모리 누수를 데몬 스레드로 해결할 수 있을까? (0) | 2023.05.27 |
자바에서 구현과 상속을 동시에 사용하는 경우(implements, extends) (0) | 2023.05.10 |
[JAVA] 자바에서 역슬래시, 따옴표 등 이스케이프 시퀀스 출력하기 (0) | 2022.01.27 |
[JAVA] 자바에서 OPEN API 연결하기 (0) | 2021.12.21 |