Primitive Type vs Reference Type

.·2022년 7월 28일
0

Computer Science

목록 보기
52/81

Data Type

데이터가 메모리에 어떻게 저장되고 프로그램에서 어떻게 처리되어야 하는지 명시적으로 알려준다.

  1. 기본형
  2. 참조형

Primitive type 기본형

특징

  • 8가지 기본형을 미리 정의하여 제공한다.
  • default 값이 있기 때문에 null이 존재하지 않는다.
  • Stack 메모리에 저장된다.
  • 변수의 실제 값(리터럴) 자체를 가진다.
  • 범위를 벗어나면 컴파일 에러가 발생한다.

종류

type기본값할당되는 메모리 크기 (byte)데이터 표현 범위
논리형booleanfalse1true, false
정수형byte01-128 ~ 127
short02-32,768 ~ 32767
int (기본)04-2,147,483,648 ~ 2,147,483,647
long0L89,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807
실수형float0.0F4(3.4 10^-38) ~ (3.4 10^38) 의 근사값
double (기본)0.08(1.7 10^-308) ~ (1.7 10^308) 의 근사값
문자형char‘\u0000’2 (유니코드)0 ~ 65,535

Reference Type 참조형

특징

  • 기본형을 제외한 모든 타입들이 참조형이다.
  • 항상 객체이다.
  • 빈 객체를 의미하는 null이 존재한다.
  • Stack 메모리에 변수명 이름을 가진 공간이 생기고, 값이 저장되어 있는 곳의 주소값(참조값)을 저장한다.
  • 실제 데이터는 Heap 메모리에 저장된다.
    • new 키워드가 힙에 값의 크기만큼 새로운 저장공간을 생성

종류

배열(array), 열거(enumeration), 클래스(class), 인터페이스(interface) 모두 기본 값은 null이며, 객체 주소값에 할당되는 메모리 크기는 4 byte로 고정(주소값만 저장하기 때문)이다.


출처

0개의 댓글