기본타입. 참조타입으로 나뉨
종류 : byte, shot, int, long, float, double, char, boolean (총 8개)
저장 위치 : 스택(Stack) 메모리에 저장되어 빠르고 간단.
특징 :
int a = 10;
int b = a; // b는 a의 값을 복사 받음
b = 20; // b값을 변경해도 a는 영향을 받지 않음.
참조 타입으로 선언된 변수는 객체가 생성된 메모리 번지를 저장
종류 : 클래스, 배열, 인터페이스, 열거형 등.
저장 위치 :
특징 :
int[] arr1 = {1, 2, 3};
int[] arr2 = arr1; // arr2는 arr1이 가리키는 배열을 참조
arr2[0] = 10; // arr2를 수정하면 arr1도 영향을 받음 (같은 배열을 참조)
System.out.println(arr1[0]); // 출력: 10
특성 | 기본 타입 | 참조 타입 |
---|---|---|
저장되는 데이터 | 값 자체 | 데이터의 메모리 주소 (참조) |
저장 위치 | 스택(Stack) | 스택 + 힙 (Stack에 주소, Heap에 데이터) |
복사 시 동작 | 값만 복사, 독립적 | 참조 복사, 동일 객체 공유 |
종류 | int, boolean 등 | 배열, 객체, String 등 |