원본 본문으로 이동하기

자바, 자바스크립트, C#에서의 포인터

박용서 - 자바, 자바스크립트, C#같은 언어에서는 모든 객체가 기본적으로 포인터의 개념으로 동작합니다. 다만 원시자료형의 경우에는 대입말고 따로 할만한 것이 없음으로 원시자료형을 제외한 모든 클래스라고 보시면됩니다. 여기서 말하는 원시자료형이란 자바를 기준으로 String을 제외한 소문자로 시작하는 객체명이라고 보면됩니다. 대부분 java.lang에 속해있습니다. 예를들어 StringBulider, int를 예제로 해보겠습니다. StringBuilder sb = new StringBuilder(); // 일반적인 클래스들 int a = 10; // 원시 자료형 수정함수 (a, sb); // 이렇게 할경우 결과는 // a는 10 그대로이며, // sb는 "가나다라"를 가진 스트링빌더가 됩니다. public void 수정함수(a, sb) { a = 1; // 대입 - 무시됨 [포인터 바꿔치기] sb.append('가나다라'); // 메서드 [포인터의 역활] sb = new StringBuilder(); // 대입 - 무시됨 [포인터 바꿔치기] } - C# 자바스크립트 자바