JAVA wrapper class, boxing/unboxing, auto unboxing (230629)

이원건·2023년 6월 29일
0

JAVA

목록 보기
25/33
post-thumbnail

1. 래퍼 클래스(Wrapper class)란 무엇인가?

  • Wrapper class란 primitive type을 Generic type을 받는 형태에서 사용하기 위해 class화 시킨 것
    보통 Collection에서 사용한다.

2. 박싱 & 언박싱에 대하여 설명하시오.

  • boxing: wrapper class type 객체를 생성할 때 단순히 리터럴 대입이 아닌 new 생성자() 로 만들도록 리터럴을 감싸주는 것
Integer iObj1 = new Integer(10);

이런식으로 한다.

  • unboxing: wrapper class type 객체가 생성되었을 때, 값을 꺼내기 위해 하는 행위를 unboxing이라고 한다.
int num = iObj.intValue();

이런식으로 한다.


3. auto unboxing 이란?

  • wrapper class 타입 객체로 생성된 변수를 불러오면 주소값이 아니라 자동적으로 unboxing 되어 해당 wrapper 클래스의 primitive type value가 자동적으로 나오게 설계된 것
Integer iObj = 10;

이라고 했을 때,

int num = iObj;

를 하면 주소값이 아니라 int value가 나오도록 설계된 것
컴파일러가 자동적으로

int num = iObj.intValue();

이렇게 iObj 뒤에 .intValue()를 붙여준다.


4. 아래의 함수는?

  • 10진수를 2진수를 바꿔 출력하는 함수
Integer.toBinaryString(int); // -> return 타입은 String
  • 10진수를 8진수를 바꿔 출력하는 함수
Integer.toOctalString(int); // -> return 타입은 String
  • 10진수를 16진수를 바꿔 출력하는 함수
Integer.toHexString(int); // -> return 타입은 String

0개의 댓글