[JAVA] 변수(variable)의 기본형과 참조형

PiggPotato·2023년 7월 24일
0

자바

목록 보기
4/7

🤔 변수의 자료형(data type)?

변수(variable)란 값(data)을 저장할 수 있는 메모리 상의 공간을 의미한다.

이때 값(data)의 종류(type)에 따라 값이 저장될 공간의 크기와 저장 형식을 저장한 것자료형(data type)이라 말한다.

int number = 10; // 자료형 변수명 =(대입연선자) 값(data)

그리고 변수에 저장될 값이 메모리에 어떻게 저장되고 프로그램에서 어떻게 처리되어야 하는지를 알려주는 키워드이기도 하다.

자료형 (data type)은 크게 기본형과 참조형 두가지로 나눌 수 있다.

  • 기본형 : 실제 값(date)을 저장한다.
  • 참조형 : 객체의 주소(memory address)를 저장한다.(null or 객체의 주소)

💻 기본형 (Primitive Type)

기본형 타입은 논리형 (boolean), 문자형 (char), 정수형 (byte, short, int, long) 실수형 (float, double) 8가지를 말한다.

분류 타입 크기 기본값 범위
논리형 boolean 1 byte false true, false
정수형 byte 1 byte 0 -128 ~127
short 2 byte 0 -32,768 ~ 32,767
int(기본) 4 byte 0 -2,147,483,648~2,147,483,647
long 8 byte 0L -9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807
실수형 float 4 byte 0.0F ±(1.40129846432481707e-45 ~ 3.40282346638528860e+38)
double(기본) 8 byte 0.0 ±(4.94065645841246544e-324d ~ 1.79769313486231570e+308d)
문자형 char 2 byte 'u0000' 0 ~ 65,535

💡 특징

  1. 모두 소문자로 시작
  2. 비객체 타입으로 null값을 가질 수 없다.(기본값)
  3. 변수의 선언과 동시에 메모리 생성
  4. 모든 값 타입은 메모리의 스택(stack)에 저장
  5. 저장공간에 실제 자료 값을 가진다.
  6. float은 부동소수점(floating point)에서 유래
  7. double은 정밀도가 float의 두배라는 의미에서 유래

💻 참조형 타입 (Reference Type)

8가지의 기본형 타입(Primitive Type)을 제외한 나머지 타입들을 말한다.

  • 문자열, 배열, 열거, 클래스, 인터페이스 타입을 말한다.

💡특징

  1. 실제 갑이 저장되지 않고 자료가 저장된 공간의 주소를 저장
  2. 실제 값이 있는 주소를 가지고 있어 그 주소를 참조해 값을 가져온다
  3. 메모리의힙(heap)에 실제 값을 저장, 주소를 갖는 변수는 스택(steak)에 저장
  4. null로 초기화 가능 (기본값 : null)
  5. 객체의 주소값을 저장하기 때문에 크기는 4 byte(64bit는 : 8byte)
profile
초보 개발자 입니다.

1개의 댓글

comment-user-thumbnail
2023년 7월 24일

이런 유용한 정보를 나눠주셔서 감사합니다.

답글 달기