일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 패캠챌린지
- ncs
- 디자인
- 자바기본
- 자바
- 패스트캠퍼스
- 국비
- DB
- 디자인패턴
- linux
- 스프링
- java기초
- java
- js
- 웹
- 자바연습문제
- Spring
- 한번에끝내는JavaSpring웹개발마스터초격차패키지Online강의
- 리눅스
- 재택근무
- javabasic
- 자바기초
- String
- 한번에끝내는JavaSpring웹개발마스터초격차패키지Online
- DesignPattern
- 데이터베이스
- 직장인인강
- 패스트캠퍼스후기
- 자바예제
- 직장인자기계발
Archives
- Today
- Total
FIF's 코딩팩토리
java.lang 패키지와 오토박싱/오토언박싱 본문
반응형
자바는 많은 패키지를 제공하는데, 중요한 패키지중 하나가 java.lang 패키지이다.
java.lang패키지는 기본으로 import 되어있다.
아래 java doc에서 java.lang 패키지에 관한 내용을 볼 수 있다.
https://docs.oracle.com/javase/8/docs/api/index.html
기본형 타입을 객체로 변환시킬 때 사용되는 wrappper클래스와,
모든 클래스의 최상위 클래스인 Obejct, 문자열과 관련된 String, StringBuffer, StringBuilder 클래스,
콘솔에 결과물을 찍는 System클래스, 수학과 관련된 Math클래스등 중요한 클래스들이 많이 들어있다.
wrapper 라는 실제 클래스가 존재하는게 아니고
8개의 기본 데이터 타입들을 객체로 변환시킬 수 있는 클래스들이 있다.
기본형 타입 | wrapper 클래스 |
byte | Byte |
short | Short |
int | Integer |
long | Long |
float | Float |
double | Double |
char | Character |
boolean | Boolean |
i는 기본형 타입이므로 참조형이 아니다.
int i = 5;
i2는 int를 객체로 바꿔주는 wrapper 클래스이다. 원래는 wrapper클래스로 한번 감싸주어야 했다.
Integer i2 = new Integer(5);
Java5버전 이후에 Integer i3 = new Integer(5); 이 과정을 컴파일러가 자동으로 해준다.
이 과정을 오토박싱 이라고 한다.(자동으로 감싸줌)
Integer i3 = 5;
객체 타입의 데이터를 기본형 타입 데이터로 형변환 하려면 아래 처럼 intValue()를 호출해야 했다.
int i4 = i3.intValue();
Java5버전 이후에 intValue() 를 호출하지 않아도 컴파일러가 자동으로 해준다.
이 과정을 오토언박싱 이라고 한다.(자동으로 벗겨줌)
int i5 = i3;
반응형
'Back-End > Java(자바)' 카테고리의 다른 글
[Java] 프로그램 실행 시간 측정 (0) | 2019.11.07 |
---|---|
스트링버퍼 클래스 (0) | 2019.11.05 |
Object 클래스와 오버라이딩 (0) | 2019.10.16 |
[Java] 맵(Map) (0) | 2019.08.30 |
[Java] Generic에 관하여 (0) | 2019.08.28 |
Comments