Java에는 기본형과 참조형이 있다.
서로 다른 특징이 있고 이를 잘 알아야 상황 적절하게 쓸 수 있다.
참조와 참조형 변수는 다르다.
참조
People클래스가 있다고 해보자.
public class People {
public int height;
public int age;
}
객체의 참조형 변수를 선언하는데, 메모리가 생성되기 전이기에 null로 초기화 해준다.
People sungHo = null;
People chanHo = null;
System.out.println("People의 변수 sungHo의 값은 : " + sungHo);
System.out.println("People의 변수 chanHo의 값은 : " + chanHo);
new 연산자를 사용하여 메모리를 생성한다.
People sungHo = null;
People chanHo = null;
sungHo = new People();
chanHo = new People();
System.out.println("People의 변수 sungHo의 값은 : " + sungHo);
System.out.println("People의 변수 chanHo의 값은 : " + chanHo);
메모리가 생성되면 내부 인덱스 테이블에 주소를 매핑하는 참조값이 하나씩 만들어진다.
이렇게 생성된 참조값이 참조형 변수 sungHo, changHo에 할당된다.
여기서 참조형 변수는 sungHo, changHo이며
참조는 위에서 출력된 new People()의 반환 값들이다.