Programming/JAVA

[JAVA] 데이터타입(기본타입, 참조타입)

잇나우 2020. 2. 12. 00:36
반응형

데이터 타입 (Data Type)

Java에서 데이터 타입은 크게 2가지로 기본 타입과 참조 타입으로 분류가 됩니다.

  • 기본 타입 (primitive type)

    • 정수 타입 (byte, short, int, long)
    • 실수 타입 (float, double)
    • 논리 타입 (boolean)
    • 문자 타입 (char)
  • 참조 타입 (reference type)

    • 배열
    • 열거 타입
    • 클래스
    • 인터페이스

기본 데이터 타입 (primitive data type)

Java에서는 총 8개의 기본 데이터 타입이 있다. 정수타입에 4가지, 실수타입에 2가지 논리타입과 문자타입에서 1가지이다. 위에 정리된 것을 보면 편하다.

자료형 타입 메모리 사용 크기 값의 범위 기본값
정수형 byte 1byte -128 ~ 127 0
short 2byte -32,768 ~ 32,767 0
int 4byte -2,147,483,648 ~ 2,147,483,647 0
long 8byte -9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807 0
실수형 float 4byte -3.4E+38 ~ 3.4E+38 0.0
double 8byte -1.7E+308 ~ 1.7E+308 0.0
문자형 char 2byte 0 ~ 65,535 \u0000
논리형 boolean 1byte true 또는 false false

값의 범위는 기억할 필요가 없지만 메모리 크기는 기억하는 것이 좋다. 이 메모리 크기를 알고 있으면 값의 범위를 대략적으로 알아낼수가 있다. 값의 범위를 초과하게 된다면 오버플로우 현상이 발생한다. 메모리 사용 크기가 적지 않게 데이터 타입을 정해주는것이 좋지만 메모리가 낭비될 수도 있다.

참조 타입(reference type)

참조 타입의 변수들은 실제 값들을 저장하고 있는 것이 아니라 실제 값이 저장되어있는 메모리 주소를 저장하고 있다고 생각하면 된다. 즉 주소를 통해 실제 값을 참조하기 떄문에 참조 타입이라고 한다. 기본 데이터 타입은 스택 영역에 데이터가 생성되고, 참조 타입은 힙 영역에 생성 됩니다.

반응형

'Programming > JAVA' 카테고리의 다른 글

[JAVA] 생성자(Constructor)  (0) 2020.02.19
[JAVA] static과 static 메소드, static 변수  (0) 2020.02.18
[JAVA] 기본 배열(Array)  (0) 2020.02.18
[JAVA] 조건문 switch문  (0) 2020.02.13
변수(Variable)과 CASTING  (0) 2020.01.12