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의 값
- 데이터가 변수 메모리에 직접 저장
- 사용하기 전에 반드시 선언(Declared)해야 사용가능
- 객체가 아니기 때문에, NULL 값을 가질 수 없음
그럼 자료형의 사용 가능 범위가/ 가장 넓은 자료형만 있으면 되는 것 아닌가?
int num1 = 123;
long num2 = 123;
- num1 == num2
- num1 의 메모리 크기 * 2 == num2 의 메모리 크기
비효율적
-> num1 과 num2가 같은 데이터이지만, 메모리에 차지하는 크기는 num2가 두배나 더 크다.
우리가 흔히 알고 있는 최적화에는 불필요한 메모리 사용을 없애고, 최대한 적은 메모리를 사용하도록 효율적인 메모리 정리의 의미도 가지고 있다.
객체 자료형(reference type)
- 데이터를 저장한 객체의 메모리 주소를 저장한다.
ex) String
<기본 자료형과 객체 자료형 구분법>
객체자료형은 class 의 특징인 대문자로 시작한다. 반면에, 기본형은 소문자로 시작한다.
PS. 메모리 단위 bit(비트)와 byte(바이트)에 관한 정리 링크
메모리 단위 표
1 byte 8 bit 1 KB 1024 byte 2 MB 1024 KB 1 GB 1024 MB 1 TB 1024 GB 프로그래밍에서 변수에 데이터를 저장할 때, 자료형의메모리를 넘어가버리면 엉뚱한 값이 저장된다.
'Java > Java(base)' 카테고리의 다른 글
Java 형변환 (객체자료형 Object type ex)String etc.) (0) | 2021.07.26 |
---|---|
Java 형변환(기본자료형) (0) | 2021.07.26 |
Java 변수 란 (0) | 2021.07.21 |
Java 프로그램 구동원리 (0) | 2021.07.20 |
Java 언어 시작 (0) | 2021.07.20 |