프로그래밍/Java / / 2022. 8. 27. 21:22

[자바 -Java] 메모리 - 메서드, 인스턴스, 힙메모리, method, instance, heap memory

1. 자바의 메모리 모델


1) java.exe가 실행이 되면서 자바가상머신(JVM)이 만들어진다. 그리고 메모리 공간 활용의 효율성을 높이기 위해서 메모리 공간을 여러 영역으로 나누게 된다.

2) 함수 호출과 스택 메모리
스택 : 함수가 호출될 때 지역 변수들이 사용하는 메모리, 함수의 수행이 끝나면 자동으로 반환되는 메모리이다.

3) 메서드(Method)
- 객체의 기능을 구현하기 위해서 클래스 내부에 정의하는 함수이다.
- 멤버 함수(member function) 이라고도 한다.
- 메서드를 구현함으로써 객체의 기능이 구현된다.
- 메서드의 이름은 그 객체를 사용하는 객체(클라이언트)에 맞게 짓는 것이 좋다.
ex) getStudentName() : 관례적으로 소문자로 시작하고 단어와 단어가 연결되는 부분은 대문자로 표기한다.

 


2. 인스턴스 생성과 힙 메모리 (heap memory)

2. 인스턴스 생성과 힙 메모리 (heap memory)

1) 인스턴스(instance)
- 클래스는 객체의 속성을 정의하고, 기능을 구현하여 만들어 놓은 코드 상태이다.
- 실제 클래스 기반으로 생성된 객체(인스턴스)는 각각 다른 멤버 변수 값을 가지게 된다.
- new 라는 키워드를 사용하여 인스턴스 생성한다.

2) 힙 메모리(heap memory)
- 생성된 인스턴스는 동적 메모리에 할당된다.
- 자바에서 Gabage Collector가 주기적으로 사용하지 않는 메모리를 수거한다.
- 하나의 클래스로부터 여러 개의 인스턴스가 생성되고 각각 다른 메모리 주소를 가지게 된다.

 


 

3. 용어


1) 객체 : 객체 지향 프로그래밍(Object Oriented Programming, OOP)의 대상, 어떤 속성 값과 행동이 생성되어 있는 인스턴스이다.

2) 클래스 : 객체를 프로그래밍 하기 위해서 코드로 정의해 놓은 상태이다.

3) 인스턴스 : new 키워드를 사용하여 클래스를 메모리에 생성한 상태이다.

4) 멤버 변수 : 클래스 특성, 속성이다.

5) 멤버 메서드 : 멤버 변수를 이용하여 클래스의 기능을 구현한 함수이다.

6) 참조 변수 : 메모리에 생성된 인스턴스를 가리키는 변수이다.

7) 참조 값 : 생성된 인스턴스의 메모리 주소 값이다.

 


LIST
  • 네이버 블로그 공유
  • 네이버 밴드 공유
  • 페이스북 공유
  • 카카오스토리 공유