[Java] 원시타입 / 참조타입

2024. 2. 23. 10:00Web/JAVA

자바의 데이터 타입

- 자바에서 데이터 타입에 대해 크게 두 가지를 제공한다. 바로 원시 타입(Primitive Type)과 참조 타입(Reference Type)이 있다.

- 원시 타입은 논리형, 문자형, 정수형, 실수형 등의 실제 데이터(값)를 저장하는 타입이고,

   참조 타입은 객체가 생성된 메모리의 주소를 저장하는 타입이다.

원시타입(Primitive Type)

- 기본형 타입에는 크게 논리형 (boolean),  문자형 (char),  정수형 (byte, short, int, long)  실수형 (float, double) 으로 나뉜다.

  • 모두 소문자로 시작한다.
  • 비객체 타입이므로 null 값을 가질수 없다.
  • 변수 선언과 동시에 메모리 새성
  • 모든 값 타입은 메모리의 Stack에 저장됨
  • 저장공간에 실제 값을 가진다
  • 비교할때 == 을 사용해서 비교가능

참조타입(Reference Type)

  • 기본형과는 다르게 Stack에 실제 값이 저장되지 않고, 자료가 저장된 공간의 주소를 저장한다.
  • 즉, 실제 값은 다른곳에 있으며, 값이 있는 주소를 가지고 있어서 나중에 그 주소를 참조해서 값을 가져온다.
  • 메모리의 Heap에 실제 값을 저장하고, 그 참조값을 갖는 변수는 Stack에 저장
  • 참조형 변수는 null 값 허용