본문 바로가기
3층 개발관/JAVA

[JAVA] 2주차 자바 기초 지식 정리(프리미티브, 래퍼런스 타입) #1

by 개발관 2023. 7. 2.
반응형

1. 프리미티브 타입 종류와 값의 범위 그리고 기본 값

프리미티브 타입(Primitive Type)이란??

기본자료형 혹은 원시자료형이라고 불리는 프리미티브 타입은 값을 할당할 때 변수의 주소값에 값이 그 자체로 저장되는 데이터 타입이다. 해당 데이터 타입은 값이 할당되면 앞서 살펴보았던 JVM Runtime Data Area 영역 중 Stack 영역에 값이 저장된다.

 

프리미티브 타입의 종류

Java 에서 프리미티브 타입의 종류는 총 8 가지이다.
- byte, short, int, long, float, double, char, boolean 타입이 그것이다. 타입의 종류와 값의 범위 기본값에 대한 간단한 표

이름 크기 값 범위 기본 값
byte 1 byte -128 ~ 127 0
short 2 bytes -32,768 ~ 32,767 0
int 4 bytes -2,147,483,648 ~ 2,147,483,647 0
long 8 bytes -9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807 0L
float 4 bytes (3.4 x 10-38) ~ (3.4 x 1038)의 근사 값 0.0f
double 8 bytes (1.7 x 10-308) ~ (1.7 x 10308)의 근사 값 0.0
boolean 1 byte True, False false
char 2 bytes 0 ~ 65,535 \u0000

 

2. 프리미티브 타입과 래퍼런스 타입

  • Primitive type(기본형 타입)
    • 기본값이 있기 때문에 Null이 존재하지 않는다.
    • byte, short, signed/unsigned int, signed/unsigned long, float, double, boolean, char
    • wrapper class는 각 privitive type을 클래스로 만든 것
    • stack 메모리에 값 저장

 

  • Reference type(참조형 타입)
    • class, interface, enum, array, String type
    • 빈 객체를 의미하는 Null이 존재
    • 값이 저장되어 있는 곳의 주소값을 저장하는 공간으로 힙(Heap) 메모리에 저장

 

3. 리터럴

데이터 그 자체를 의미한다. 상수와는 다른 의미인데 비교해보자면,

- 상수는 한 번만 값을 저장 가능한 변수

- 리터럴은 데이터 그 자체를 의미

final int number = 1; //상수
int num = 1; //리터럴

예시에서 보다시피 어떤 변수에 의해 저장되는 값 자체로써 변화하지 않는 것들을 의미한다.

 


** 참고자료 **

소고기 굽는 개발자에서 발췌

반응형