1. 레퍼클래스
1. 래퍼클래스(Wrapper Class)란?
기본자료형을 객체로 감싸는 클래스입니다.

| 기본 자료형(Primitive Type) | 래퍼 클래스(Wrapper Class) |
|---|
| byte | Byte |
| short | Short |
| int | Integer |
| long | Long |
| float | Float |
| double | Double |
| char | Character |
| boolean | Boolean |
2. 기본형(Primitive Type)의 종류

3. 참조형(Reference Type)
- 변수에 객체가 담기면 해당 변수를
참조형변수라고 말한다.
- 참조형 변수는 데이터가 저장된 메모리 주소를 가리킨다.
- 객체 데이터는
Heap영역에 저장된다.
객체, 배열등이 참조형에 속한다.
- 래퍼클래스도 객체
- 래퍼클래스가 담겨있는 변수도 참조형 변수
- 출력시 메모리 주소값이 나오지 않음
- 내부적으로
toSrting()이 오버라이딩되어 있다.
4. 래퍼클래스를 사용하는 이유
- 기본형은 객체처럼 속성, 기능을 가질 수 없음
- 객체는 기능을 제공할 수 있음
- 기본형을 감싼 객체를 만들어 기능을 제공하는 편리하게 데이터처리 가능
5. 오토박싱 vs 언박싱
- 오토박싱(Auto - boxing)
Integer는 참조형 이지만 기본형 int값을 직접 대입가능
- 내부적으로 컴파일러가 자동으로 `Integer.valueOf(10)을 호출하여 객체를 생성하기 때문
Integer num3 = 10; // ✅ 오토박싱
// ✅ 내부적 자동 처리(래퍼형 <- 기본형)
Integer num = Integer.valueOf(10);
- 오토 언방싱
num은 Integer객체지만 기본형 int변수에 대입 가능
- 내부적으로 컴파일러가 자동으로
num.intValue()을 호출하여 기본형으로 변환
Integer num3 = 10;
int num = num3; // ✅ 오토 언박싱
// ✅ 내부적 자동처리(기본형 <- 래퍼형)
int a = num.intValue();