자바는 모든 요소가 객체로 취급되는 대표적인 객체지향 언어이다.
하지만 여기서 예외가 있는데 바로 기본자료형들이다.
- 정수형(primitive integer types): byte, short, int, long
- 부동 소수점형(primitive floating-point types): float, double
- 문자형(primitive character type): char
- 불리언형(primitive boolean type): boolean
위와 같은 요소들은 객체로 취급되지 않는다.
그렇기에 객체로 사용하기 위해서는 객체라는 포장지에 감싸줘야한다. 즉 래핑을 해줘야한다.
이런 역할을 해주는 것을 바로 래퍼 클래스 (Wrapper Class) 라고 한다.
다음은 래퍼클래스들의 목록이다. 이 친구들은 모두 객체로 취급된다.
- Byte: byte의 래퍼 클래스
- Short: short의 래퍼 클래스
- Integer: int의 래퍼 클래스
- Long: long의 래퍼 클래스
- Float: float의 래퍼 클래스
- Double: double의 래퍼 클래스
- Character: char의 래퍼 클래스
- Boolean: boolean의 래퍼 클래스
그렇다면 기본타입을 래퍼클래스로 다뤄야 할 때는 언제가 있는가?
1.래퍼클래스에서 제공하는 다양한 메소드들을 사용하기 위해.
2.컬렉션 또는 제네릭을 사용할 때, 컬렉션이나 제네릭에서는 객체만을 저장한다.
3.메소드의 매개변수로 객체가 요구될 때.
4.Null 값을 표현 할 때, 기본 데이터 타입은 Null 값을 가질 수 없다.
5.객체지향적인 설계를 위해 기본타입과 객체타입을 일관되게 다루고 싶을 때.
'언어 > Java' 카테고리의 다른 글
JAVA 자바 메모리 구조 (0) | 2024.11.18 |
---|---|
알고리즘 문제풀이용 JAVA 문법 정리 (2) | 2024.11.13 |
람다식 (0) | 2024.03.22 |
다형성 (Ploymorphism) (0) | 2023.09.12 |
리스트 UnsupportedOperationException 에러 (0) | 2023.08.30 |