[기술 면접 질문] Primitive 타입 & Wrapper 타입

0

기술 면접 준비

목록 보기
15/19
post-thumbnail
post-custom-banner

[기술 면접 질문] Primitive 타입 & Wrapper 타입

📝요약

  • Primitive 타입은 값을 저장하는 타입이고 Wrapper 타입은 Primitive 타입의 필드를 갖는 인스턴스를 저장하는 타입입니다.
    Primitive 타입을 Wrapper 타입으로 변환하는 것을 Boxing, 그 반대는 UnBoxing이라고 부릅니다.
    Primitive 타입을 Boxing하여 사용하는 이유는, Wrapper 타입을 사용하면 null이 값으로 허용되며, Collection Framework를 사용할 수 있고, Generics 타입에 사용할 수 있게 되기 때문입니다.

📌참고자료

📌도움될만한 지난 포스팅

  • 자료형
    • 기본형(primitive type): 값 저장
      • 논리형: boolean
      • 문자형: char
      • 정수형: byte, short, int, long
      • 실수형: float, double
    • 참조형(reference type): 주소 저장
      • 8개의 기본형을 제외한 모든 타입
  • Wrapper Class: 기본형 타입을 객체로 변환한 클래스
    = 기본형 데이터 타입을 저장하는 필드를 가진 객체 생성

  • Boxing: 기본형 -> 래퍼 클래스 변환
    Unboxing: 래퍼 클래스 -> 기본형
    Auto Boxing: 자바 컴파일러가 자동으로 Boxing
    Auto Unboxing: 자바 컴파일러가 자동으로 Unboxing

  • Primitive 타입의 특징
    • null 불가
    • JVM stack 메모리에 저장됨 -> 접근 쉽고 빠름
    • 변수 간편하게 선언 가능, 대용량 계산 빠르게 처리 가능
    • 값을 그대로 저장하여 값 변경 가능
    • Collection Framework 사용 불가
    • Generics 타입으로 사용 불가
  • Wrapper 타입의 특징
    • null 허용
    • JVM heap 메모리에 저장됨 -> 접근 속도 느림
    • 프로그램이 객체지향적이 되도록 도움
    • 값 변경 불가 -> 새 값을 필드로 갖는 새 인스턴스를 생성하여 그 주소 참조해야
    • Collection Framework 사용 가능
    • Generics 타입으로 사용 가능
profile
Be able to be vulnerable, in search of truth
post-custom-banner

0개의 댓글