[아이템 61] 박싱된 기본 타입보다는 기본 타입을 사용하라
IT 개발/개념 정리
2022. 8. 15. 14:44
- 기본 타입 / 박싱 타입의 차이
차이점 | 기본 타입 | 박싱 타입 |
속성 존재 여부 | 값만 존재 | 값 + 식별성 |
null 값 여부 | 유효한 값 | null이 존재할 수도 있다(유효하지 않다) |
메모리 | 효율적 | 비효율적 |
기본 타입과 박싱된 기본 타입을 혼용한 연산에서는 박싱된 기본 타입의 박싱이 자동으로 풀린다.
static Integer i;
public static void main(String[] args) {
if ( i == 42) //null 참조를 언박싱하면서 NullPointerException이 발생한다
System.out.println("믿을 수 없군!");
}
박싱된 기본 타입을 사용하는 경우
- 컬렉션의 원소, 키, 값
- 매개변수화 타입이나 매개변수화 메서드의 타입 매개변수로는 박싱된 기본 타입을 사용
- 리플렉션을 통해 메서드를 호출할 때도 박싱된 기본 타입 사용
반응형
'IT 개발 > 개념 정리' 카테고리의 다른 글
@Transactional 어노테이션에 대한 정리 (0) | 2023.11.26 |
---|---|
Spring Security 환경에서 h2 console enabled : true일 때 오류 (0) | 2023.09.10 |
[아이템 54] null이 아닌, 빈 컬렉션이나 배열을 반환하라 (0) | 2022.07.29 |
[아이템 51] 메서드 시그니처를 신중히 설계하라 (0) | 2022.07.22 |
[아이템 50]적시에 방어적 본사본을 만들라 (0) | 2022.07.22 |