| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | ||||
| 4 | 5 | 6 | 7 | 8 | 9 | 10 |
| 11 | 12 | 13 | 14 | 15 | 16 | 17 |
| 18 | 19 | 20 | 21 | 22 | 23 | 24 |
| 25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- java
- elasticsearch
- Web
- 자바
- 백준
- 인터페이스
- 독후감
- Spring
- 알고리즘
- node
- java8
- 엘라스틱서치
- boot
- MySQL
- 맛집
- 자바스크립트
- 스프링
- nodejs
- effective
- error
- kibana
- 이펙티브
- JPA
- jface
- Spring Boot
- 후기
- Git
- javascript
- RCP
- 리뷰
Archives
- Today
- Total
wedul
규칙 49 - 객체화된 기본 자료형 대신 기본 자료형을 이용하라. 본문
반응형
자바에는
기본 자료형인 int, double, boolean등이 있고, 객체화된 기본 자료형인 Integer, Double, Boolean등이 있다.
자바 1.5부터 autoboxing과 auto-unboxing이 되면서 두개의 차이를 희미하게 했다.
하지만 이 두가지 자료형의 차이점이 3가지가 있다.
1. 기본자료형은 값만 가지지만 객체화된 기본자료형은 값 이외에 identity을 가진다.
-> 그렇기 때문에 객체화된 기본자료형은 값이 같더라도 서로 다른 identity일 수 있다.
2. 기본 자료형은 완전한 값이지만 객체화된 기본자료형은 null이라는 값이 하나 더 있다.
3. 기본자료형이 시간이나 공간 요구량 측면에서 더욱 효율적이다.
결론은
자동 객체화를 통해 편하게 사용할 수 있지만, 객체화된 기본 자료형을 사용할 때 생길 수 있는 문제들을 없애주진 않는다. 또한 객체화된 기본 자료형과 기본 자료형을 한 표현식 안에 뒤섞으면 비객체화가 자동으로 일어나며, 그 과정에서 NullPointException이 발생할 수 있다.
출처 : 조슈아 블로크, 『 Effective Java 2/E』, 이병준 옮김, 인사이트(2014.9.1), 규칙49인용.
반응형
'JAVA > Effective Java' 카테고리의 다른 글
| 규칙 51 - 문자열 연결 시 성능에 주의하라 (0) | 2018.05.29 |
|---|---|
| 규칙 50 - 객체화된 기본 자료형 대신 기본 자료형을 이용하라. (0) | 2018.05.29 |
| 규칙 48 - 정확한 답이 필요하다면 float와 double은 피하라 (0) | 2018.05.29 |
| 규칙 47어떤 라이브러리가 있는지 파악하고 적절히 활용하라 (0) | 2018.05.29 |
| 메서드- 규칙 46 for문 보다는 for-each 문을 사용하라 (0) | 2018.05.29 |
