본문 바로가기
Programming/JAVA

자바의 실행 구조

by Teshub 2021. 1. 16.

 

자바의 자료구조는 다음과같다


그림참조
jdk의 자바 컴파일러가 자바파일을 클래스파일로 변환후
메소드영역과 스태틱영역에 클래스파일의 정보를 넣는다
스택영역인 쓰레드에서 객체(클래스의 실체)를 불러 올려면 방법이 두가지이다
첫번째로 클래스멤버(필드 + 메서드)가 static인경우
이경우 처음에 스태틱영역에 클래스멤버의 정보가 저장되고 이경우 스택영역에서 바로 클래스멤버를 호출할수있다

두번째는 정공법인 쓰레드에서 메소드(스태틱)영역에있는것을 힙영역으로 불러와 힙영역의 주소를 얻어와서 객체를 호출하는 방법이다
사용법은
타입 변수 = new 클래스(); 이다

즉 클래스메소드영역에서 힙영역으로 불러오고 힙영역의 주소를 쓰레드(스택)영역에서 가진다 이 주소에서 정보를 얻어서 처리

클래스멤버 = 필드 + 메서드
필드 =  변수

클래스는 static일 수 없음. 이클립스에서 class에 static 붙여보길 바람. = 이유 staic은 class영역(메서드영역)의 부분집합이기 때문

 

 

여태껏 공부하면서 몇 가지 했던 메모를 옮겨 적을려한다.

틀린 내용이 있다면 언제든지 댓글에 수정 부탁드립니다.

제가 공부하면서 적은 내용이기에 틀린 부분이 있을 수 있습니다 감안해서 봐주세요.

728x90

댓글