본문 바로가기

Java/Java_(wrapper,Number)_(Class),오토박싱,언박싱

Java_Language( wrapperClass, NumberClass, autoboxing&unboxing ) 래퍼클래스, 넘버클래스, 오토박싱&언방싱

반응형

래퍼(wrapper)Class

  - 생성자는 매개변수로 문자열이나 각 자료형의 값들을 인자로 받는다.

  - 생성자의 매개변수로 문자열을 제공할 때, 각 자료형에 맞는 문자열을 사용해야 한다.

  

<위 그림에서 Integer i = new Integer(100);   ,Integer i2 = new Integer(100); 는 예제를 위한 것이다.>

<위 그림에 빨간줄이 있는 것은 아래 autoboxing  하면 사라진다..>

  - 래퍼 클래스들은 모두 equals()가 오버라이딩되어 있어서 주소값이 아닌 객체가 가지고 있는 갑슬 비교

  - toString()도 오버라이딩되어 있어서 객체가 가지고 있는 값을 문자열로 변환하여 반환

 

래퍼 클래스의 생성자

 

NumberClass

상속 계층도 (노란색 - 래퍼클래스)  
문자열 -> 기본형, 래퍼클래스 변경

*  JDK1.5부터 '오토박싱(autoboxing)' 로 인해 반환값이 기본형일 때와 래퍼클래스의 차이가 없어졌기에

   valuOf를 쓰는것을 추천한다.

 

진수 변경

 

 

autoboxing & unboxing

 - JDK1.5이전에서는 기본형과 참조형 사이의 연산이 불가했기에 래퍼클래스로 부터 기본형을 객체로 만들어 연산

 - autoboxing = Integer형 변수에 int형 데이터가 들어갈 때  자동으로 int형 데이터가 Integer형으로 변환

 - unboxing    = int형 변수에 Integer형 데이터가 들어갈 때 자동으로 Integer형데이터가 int형으로 변환

 

ex) Object     obj  =  (Object)Integer.valueOf(i);  

나머지는 문자열 -> 래퍼클래스  표를 보면 된다.

반응형