Wrapper 클래스

jisoo·2022년 7월 17일
0

Wrapper 클래스

목록 보기
1/1
post-thumbnail

Wrapper 클래스란 ? 🤔

기본 타입에 해당하는 데이터를 객체로 포장해 주는 클래스를 래퍼 클래스(Wrapper class) 라고 한다.

  • 래퍼 클래스는 각각의 타입에 해당하는 데이터를 인수로 전달받아, 해당 값을 가지는 객체로 만들어 준다.

  • 기본 타입(byte, char, short, int, long , float, double, boolean)의 값을 갖는 객체를 포장(Wrapper) 객체라고 하는데, 기본 타입의 값을 내부에 두고 포장하기 때문이다.

  • 래퍼 클래스는 모두 java.lang 패키지에 포함되어 제공된다.





Wrapper 클래스를 사용하는 이유가 뭘까 ❓

  1. Wrapper 클래스는 기본 데이터 타입을 Object로 변환할 수 있다. 메소드에 전달된 인수를 수정하려는 경우 오브젝트가 필요하다.
  • 기본 데이터 타입을 Object로 변환할 수 있다.
  1. java.util 패키지의 클래스는 객체만 처리하므로 Wrapper class 는 이 경우에도 도움이 된다.

  2. ArrayList 등과 같은 Collection 프레임 워크의 데이터 구조는 기본 타입이 아닌 객체만 저장하게 되고 Wrapper Class를 사용하여 자동 박싱과 언박싱이 일어난다.

  • 기본 타입의 값을 포장 객체로 만드는 과정 -> 박싱
  • 포장객체에서 기본타입의 값을 얻어내는 과정 -> 언박싱
  • 자동 박싱 & 자동 언박싱 이란?
    • 기본 타입 값을 직접 박싱, 언박싱하지 않아도, 자동적으로 일어나는 경우가 있다.

      • 자동 박싱의 포장 클래스 타입에 기본값이 대입될 경우 발생한다
        ex )
      public class WrapperExample {
      	public static void main(String[] args) {
          	Integer num = 10; // 자동 박싱
          	int n = num; // 자동 언박싱
          }
      
      }
  1. 멀티스레딩에서 동기화를 지원하려면 객체가 필요하다.
profile
Backend Developer 👩🏻‍💻

0개의 댓글