Wrapper 클래스란?
8가지 기본 자료형(primitive type)을 객체로 표현하기 위해 제공되는 클래스 |
객체로서 다양한 메서드와 속성을 사용하며, 포장하고 있는 기본 타입은 외부에서 변경할 수 없음. |
주로 객체를 생성하는데 초점이 맞춰져 있음 |
Wrapper 내용
기본 타입 | 포장 클래스 |
byte | Byte |
char | Charcter |
short | Short |
int | Integer |
long | Long |
float | Float |
double | Double |
boolean | Boolean |
Wrapper 클래스를 사용하는 이유
특징 | 이유 |
컬렉션 저장 | 자바의 클렉션은 기본 데이터 타입을 직접 저장하지 못함 기본 데이터 타입을 저장하고 싶을 때엔 Wrapper 클래스를 사용하는 것이 원칙 |
null 값 허용 | 기본 데이터 타입은 null 값을 가질 수 없음 그러나 어떤 값이 없거나 알 수 없는 경우를 표현하고 싶을 때, Wrapper 클래스는 null 값을 가질 수 있어서 사용 |
메서드와 유틸리티 | 문자열을 변환하거나 값 비교와 같은 유용한 메서드 제공 |
메서드와 매개변수 | 메서드에 객체를 매개변수로 전달하거나 반환해야 할 때 Wrapper 클래스가 유용 |
오토박싱과 오토 언박싱
auto-boxing | auto-unboxing |
기본 데이터 타입을 Wrapper 클래스 개게로 자동 변환 | Wrapper 클래스 객체를 기본 데이터 타입으로 자동 변환 |
Wrapper 객체 사용 시 주의 사항
포장 객체는 값 비교를 위해 ==, != 연산자 사용 불가능 |
참조값을 비교하기에 equals() 메소드로 내부 값을 비교함 |
단, 포장 객체의 효율적 사용을 위해 특정 범위 이내의 값은 공유되어 나타남 |
Wrapper 클래스에서 공유가 되는 값
타입 | 값 범위 |
boolean | true, false |
char | \u0000-\u007f |
byte, short, int | -128 - 127 |
'국비지원 공부 정리 > Java' 카테고리의 다른 글
Collection FrameWork - Map, Set, List (0) | 2025.04.09 |
---|---|
자바의 재네릭과 와일드카드 (0) | 2025.04.09 |
추상 클래스와 인터페이스 (0) | 2025.04.08 |
객체지향 프로그래밍과 객체 (0) | 2025.04.08 |
JAVA 예외처리 (0) | 2025.04.08 |