레퍼런스는 가리킨다는 뜻으로 생성한 객체의 주소를 변수에 저장하는 것.
객체의 주소가 null
이면 더 이상 객체를 이용할 수 없다.
->NullPointerException
발생
메인 메소드와 같이 static으로 지정된 메소드의 코드는 해당 클래스 파일이 최초 호출될 때 메모리에 올라간 후 프로그램 종료 시까지 계속 남아있는다. 따라서 static메소드는 별도의 객체를 생성하지 않고도 언제 어디서나 접근해서 사용할 수 있다.
메소드 내에서 정의하는 기본 자료형에 해당되는 지역변수의 데이터 값이 저장되는 공간이다. 즉 기본(원시)타입 변수는 스택 영역에 직접 값을 가진다. 해당 메소드가 호출될 때 메모리에 할당되고 종료되면 메모리가 해제된다.
참조 변수의 실제 데이터가 생성되는 영역이다. new연산자로 생성된 객체와 배열을 저장한다. 참조하는 변수나 필드가 없다면 Garbage Collector에 의해서 제거된다.