Student studentLee = new Student(); //Student 클래스 생성
studentLee.studentName = "이하린"; // 멤버 변수 사용
System.out.println(studentLee.studentName);
System.out.println(studentLee.getStudentName()); //메서드 사용
힙(heap)은 프로그램에서 사용하는 동적 메모리(dynamic memory) 공간을 말한다. 일반적으로 프로그램은 스택, 힙, 데이터 이렇게 세 영역을 사용하는데, 객체가 생성될 때 사용하는 공간은 힙이다. 힙은 동적으로 할당되며 사용이 끝나면 메모리를 해제해 주어야 한다.
C나 C++ 에서는 프로그래머가 직접 메모리를 해제해야 하지만, 자바에서는 가비지 컬렉터(garbage collecter)가 자동으로 메모리를 해제해 준다.
Student studentLee = new Student(); //Student 클래스 생성
위와 같이 생성된 클래스를 studentLee 변수에 대입하면, 인스턴스가 저장된 메모리를 studentLee 변수가 가리킨다.
Student student1 = new Student(); //Student 클래스 생성
Student student2 = new Student();
생성된 두 인스턴스는 당연히 각각 다른 메모리 공간을 차지한다.
참조 변수는 힙 메모리에 생성된 인스턴스를 가리킨다.
- 객체 : 생성된 인스턴스
- 클래스 : 객체를 프로그래밍하기 위해 코드로 만든 상태
- 인스턴스 : 클래스가 메모리에 생성된 상태
- 멤버 변수 : 클래스의 속성, 특성
- 참조 변수 : 메모리에 생성된 인스턴스를 가리키는 변수
- 참조 값 : 생성된 인스턴스의 메모리 주소 값
참조가 참 조아요