5.1 데이터 타입 분류

자바의 데이터 타입은 크게 기본 타입과 참조 타입으로 분류.

참조 타입이란 객체의 번지를 참조하는 타입으로 배열, 열거, 클래스, 인터페이스 타입

C4B22A6A-6953-4B9D-95F2-60CA9D27C5B6_1_105_c.jpeg

기본 타입으로 선언된 변수는 값 자체를 저장하고 있지만, 참조 타입으로 선언된 변수는 객체가 생성된 메모리 번지를 저장

// 기본 타입 변수
int age = 25;
double price = 100.5;
// 참조 타입 변수
String name = "신용권";
String hobby = "독서";

82D47948-25BF-44F6-80A4-6E245850B5C4_1_201_a.jpeg

변수들은 모두 스택이라는 메모리 영역에 생성.

기본 타입 변수인 age, price는 직접 값을 저장하고 있지만, 참조 타입 변수인 name, hobby는 힙 메모리 영역의 String 객체 번지를 저장하고 이 번지를 통해 String 객체를 참조

5.2 메모리 사용 영역

java 명령어로 JVM이 구동되면 JVM은 운영체제에서 할당받은 메모리 영역을 다음과 같이 구분해서 사용

C8D5190A-AD7C-4173-B7EE-75E64008A73E_1_105_c.jpeg

메소드 영역