끄적끄적 메모장

[JS] 기본타입과 참조타입의 차이점 본문

프론트엔드/JavaScript

[JS] 기본타입과 참조타입의 차이점

병걸 2023. 12. 1. 16:01

 

프로그래밍 언어에서 데이터를 다루는  데 사용되는 두 가지 주요 유형인 기본타입과 참조타입에 대해서 알아보자.

 

1. 기본타입 ( Primitive Types)

 

- 기본타입은 간단한 데이터 값을 저장합니다.

- 일반적으로 정수, 실수, 문저, 불리언 들이 여기에 속합니다.

- 변수에 직접 값이 저장되며, 해당 값은 스택 메모리에 저장됩니다.

- 대표적인 예시로는 int, float, char, boolean 등이 있습니다.

 

ex)

int x = 5;  // 기본타입 변수
int y = x;  // 값이 복사됨
x = 10;     // x의 값 변경해도 y에 영향 없음
System.out.println(y);  // 출력: 5

 

 

 

2. 참조타입 ( Reference Types)

 

- 참조 타입은 객체를 가르키는 주소를 저장합니다. (화살표)

- 객체는 힙 메모리(RAM)에 저장되며, 변수는 해당 객체를 가리키는 주소를 갖습니다.

- 대표적으로 배열, 클래스,인터페이스 등이 여기에 속합니다.

- 변수 사이에 값이 공유되며, 한 변수의 변경이 다른 변수에 영향을 줄 수 있습니다.

 

ex)

int[] arr1 = {1, 2, 3};  // 참조타입 변수
int[] arr2 = arr1;       // 배열의 주소가 복사됨
arr1[0] = 10;            // arr1을 변경하면 arr2에도 영향을 줌
System.out.println(arr2[0]);  // 출력: 10

 

 

 

즉, 기본타입은 값 자체를 저장하고 복사하며, 참조타입은 객체에 대한 참조(주소)를 저장하고 공유합니다.

 

 

Comments