프로그래밍/JAVA

[JAVA] 자바 자료형

UnaUna 2023. 10. 27. 00:38
반응형

1. 기본 타입(Primitive Type)

  • 논리 타입 : Boolean Type(boolean)
  • 숫자 타입 : Numeric Type
    • 정수 타입 : Integer Type(byte, short, int, long)
    • 실수 타입 : Floating Point Type(float, double)
    • 문자 타입 : Character Type(char)

1.1 특징

  • 사용하기 전에 선언이 되어야한다.
  • OS에 따라 자료형의 길이가 변하지 않는다.
  • 비객체 타입으로 null 값을 가질 수 없다.(기본값 존재)
  • 변수의 선언과 동시에 메모리를 생성한다.
  • 모든 값 타입은 메모리의 스택에 저장된다.

1.2 자료형의 메모리 크기

Type Memory(byte) 범위 기본값
byte 1 -128~127 0
short 2 -32,768~32,767 0
int 4 -2,147,483,648~2,147,483,647 0
long 8 -9,223,372,036,854,775,808~-9,223,372,036,854,775,807 0L
float 4 +-1.4E-45 ~ 3.4028235E38 0.f
double 8 +-4.9E-324 ~ 1.7976931348623157E308 0.0
char 2 \u0000 ~ \uffff '\u0000'
boolean 1 true or false false

1.3 BitInteger

정말 큰 숫자가 필요할 때 사용하는 타입

2. 참조형(Reference Type)

  • Class Type
  • Interface Type
  • Enum Type
  • Array Type

2.1 특징

  • 실제 값이 저장되는게 아닌, 자료가 저장된 공간의 주소를 저장한다.
  • 저장된 공간의 주소를 참조해서 값을 가져온다.
  • 메모리의 힙에 실제 값을 저장하고 그 참조값을 갖는 변수는 스택에 저장한다.
  • null로 초기화 할 수 있다.

2.2 자료형의 메모리 크기

Type Memory(byte) 기본값
byte 4 Null
short 4 Null
int 4 Null
long 4 Null

객체의 주소값을 저장하고 있어 모두 4byte이다.

반응형