본문 바로가기

5. 참조타입

5.1_ 데이터 타입 분류

참조타입이란

[객체의 번지를 참조하는 타입으로 배열, 열거, 클래스, 인터페이스 타입을 말한다. ]


기본 타입 vs 참조 타입

<데이터타입>

기본타입

ㄴ정수, 실수, 논리 리터럴을 저장하는 타입

  1. 정수타입 - byte, char, short, int, long
  2. 실수타입 - float, double
  3. 논리타입 - boolean

- 실제 값을 변수 안에 저장 

 

 

참조타입

ㄴ객체의 번지를 참조 하는 타입

  1. 배열타입
  2. 열거타입
  3. 클래스
  4. 인터페이스

-메모리의 번지를 값으로 갖는다.

 


int age = 25;
double price = 100.5;

정수, 실수 기본타입으로 값을 직접  Stack영역에 저장한다.

 

String name = "자바"
String hobby = "넷플릭스"

String 클래스 변수인 name과 hobby는 힙 영역에 String 객체 주소 값을 가지고 있다. 

<heap 영역>에 String객체 "자바"와 "넷플릭스"가 생성된다.

생성되는 주소가 만약 각각 동래, 남포동 이라면,

<Stack 영역>에는 name에는 동래, price에는 남포동이라고 저장 되어 있음. 

 

그리고 Stack 영역에 저장된 주소(동래, 서면)이 Heap영역의 String 객체를 참조한다. 

 

'5. 참조타입' 카테고리의 다른 글

5.6.10_ 향상된 for문  (0) 2020.05.01
5.6.8_객체를 참조하는 배열  (1) 2020.04.30
5.6.7_다차원 배열  (0) 2020.04.30
5.6.6_커맨드 라인 입력  (0) 2020.04.30
5.6.1~5_배열, 배열 선언, 배열길이  (1) 2020.04.26