Java 참조

개요[ | ]

Java 참조
  • 자바에서 new로 선언하는 변수는 모두 참조 자료형이다.
  • 참조 자료형으로 선언된 변수에는 데이터저장공간의 주소가 저장된다.
  • 아래는 기본 자료형 int에 대한 대입연산 예시이다. (비교를 위해)
public class HelloJava {
    public static void main(String[] args){
        int a, b;
        a = 2000;
        b = a;
        b = 42;
        System.out.println("a = " + a);
        System.out.println("b = " + b);
    }
}
  • 반면, 참조 자료형에서 대한 대입연산에서는 다음과 같은 상황이 발생한다.
public class HelloJava {
    public static void main(String[] args) {
        class MyObject {
            public int id;
        }
        MyObject a, b;
        a = new MyObject();
        a.id = 2000;
        b = a; // 주소 복제!
        b.id = 42;
        System.out.println("a.id = " + a.id); // b를 변경했는데 a도 변경되었다.
        System.out.println("b.id = " + b.id);
    }
}
문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}