티스토리 뷰
★JVM이 사용하는 메모리 영역
▶ 메소드 영역
-> 스레드 별 생성
->로딩된 클래스 바이트 코드 클래스 정보, 멤버 변수, static 메소드 , static변수
-> 객체를 만들지 않아도 사용 가능
-> 모든 스레드가 공유(프로세스내에서의 흐름)
▶ 힙영역
->JVM 시작할 때 생성
->객체, 배열 저장
-> 사용 되지 않는 객체는 Garbage Collector 가 자동제거
▶ JVM 스택
-> 스레드 별 생성
-> 메소드 호출할때마다 frame을 스택에 추가
★ 메모리 사용 영역
1. java Main -> 실행
2. JVM 구동 -> 메소드,힙영역 생성
3. Memory 로딩
4. main 스레드 생성, JVM 스택 생성
5. main 메소드 호출
|
12. JVM 종료
출력화면
변수 v2와 v2가 합쳐진 결과 30 이 출력됨을 확인 할수가 있다.
C언어를 했다면 add라는 블럭은 마치 void add(int a,int b)와 같은 일종의 함수와 같다고 생각해도 무방할것 같다.
'IT > JAVA' 카테고리의 다른 글
[정보 올림피아드] 151번 (0) | 2017.07.06 |
---|---|
[정보 올림피아드] 150번 (0) | 2017.07.06 |
[정보 올림피아드] 555번 (0) | 2017.07.06 |
비 정방형 배열의 생성과 접근 (0) | 2017.07.06 |
배열의 이름은 무엇을 의미할까? (0) | 2017.07.06 |
댓글