Java/Java(base)

Java 자료형

ID_DI 2021. 7. 22. 00:09

Java 자료형(data type)

기본 자료형(primitive type)과 객체 자료형(reference type)

기본 자료형(primitive type)

  • 정수형 :
    • byte (1byte) : -128 ~ 127 까지의 정수를 다룰 수 있음
    • short (2byte) : -32,768 ~ 32,767
    • int (4byte) : -2,147,483,648~2,147,483,647 권장
    • long (8byte) : -9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807
  • 실수형 :
    • float(4byte) : ±(1.40129846432481707e-45 ~ 3.40282346638528860e+38)
    • double(8byte) : ±(4.94065645841246544e-324d ~ 1.79769313486231570e+308d) 권장
  • 문자형 :
    • char(2byte) : 문자 한글자만
  • 논리형 :
    • boolean(1byte) : true, false의 값
  1. 데이터가 변수 메모리에 직접 저장
  2. 사용하기 전에 반드시 선언(Declared)해야 사용가능
  3. 객체가 아니기 때문에, NULL 값을 가질 수 없음

그럼 자료형의 사용 가능 범위가/ 가장 넓은 자료형만 있으면 되는 것 아닌가?

int num1 = 123;
long num2 = 123;
  • num1 == num2
  • num1 의 메모리 크기 * 2 == num2 의 메모리 크기

비효율적

-> num1 과 num2가 같은 데이터이지만, 메모리에 차지하는 크기는 num2가 두배나 더 크다.

우리가 흔히 알고 있는 최적화에는 불필요한 메모리 사용을 없애고, 최대한 적은 메모리를 사용하도록 효율적인 메모리 정리의 의미도 가지고 있다.

객체 자료형(reference type)

  • 데이터를 저장한 객체의 메모리 주소를 저장한다.
    ex) String

<기본 자료형과 객체 자료형 구분법>

객체자료형은 class 의 특징인 대문자로 시작한다. 반면에, 기본형은 소문자로 시작한다.


PS. 메모리 단위 bit(비트)와 byte(바이트)에 관한 정리 링크

메모리 bit&byte정리

메모리 단위 표

1 byte 8 bit
1 KB 1024 byte
2 MB 1024 KB
1 GB 1024 MB
1 TB 1024 GB

프로그래밍에서 변수에 데이터를 저장할 때, 자료형의메모리를 넘어가버리면 엉뚱한 값이 저장된다.