티스토리 뷰

728x90
반응형

Primitive Type의 종류와 값의 범위 그리고 기본값

  • 논리형(boolean), 문자형(char), 정수형(byte, short, int, long), 실수형(float, double)이 있으며 프리미티브 타입은 값을 할당할 때 변수의 주소 값에 값이 그대로 저장되는 데이터 타입입니다.
  • 해당 데이터 타입은 값이 할당되면서 JVM의 Runtime Data Area 영역 중 Stack영역에 값이 저장됩니다.
  타입 기본값 값의 범위 값의 크기
정수형 byte 0 -128 ~ 127 1byte
short 0 -32,768 ~ 32,767 2byte
int 0  -2,147,483,648 ~ 2,147,483,647 4byte
long 0L 9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807 8byte
실수형 float 0.0f (3.4 X 10-38) ~ (3.4 X 1038) 의 근사값 4byte
double 0.0 (1.7 X 10-308) ~ (1.7 X 10308) 의 근사값 8byte
문자형 char '\u0000' 0 ~ 65,535 2byte
논리형 boolean FALSE false, ture 1byte

Primitive Type과 Reference Type이란?

Primitive Type

  • primitive Type은 실제 데이터 값을 저장하는 타입입니다.
  • Primitive Type은 기본값이 있기 때문에 null이 존재하지 않습니다.
  • Primitive Type은 값이 할당되면서 JVM의 Runtime Data Area 영역 중 Stack영역에 값이 저장됩니다.
  • 값의 범위를 벗어나면 컴파일 에러가 발생합니다.

Reference Type

  • 대표적으로는 class, interface, enum, array, String Type이 있습니다.
  • 원시타입(Primitive Type)을 제외한 모든 타입은 참조형 타입입니다.
  • 빈 객체를 의미하는 null이 존재합니다.
  • 값이 저장되어 있는 곳의 주소값을 저장하는 공간으로 Heap 영역에 저장됩니다.

Literal이란?

  • 데이터 그 자체를 의미합니다. 변수에 넣는 변하지 않는 데이터를 의미합니다.
  • 프로그램에서 직접 표현한 값입니다.
  • 정수, 실수, 문자, 논리, 문자열 리터럴이 존재합니다.

  • 참고) 상수를 사용할 때는 final 키워드를 사용합니다. 그러나 리터럴은 변하지 않는 값을 의미합니다.

728x90
반응형