클래스 (을 .class) 를 들어 같은 Test.class라는
Test test1 = new Test();
Test test2 = new Test();
System.out.println(test2.getClass().hashCode());
System.out.println(test1.getClass().hashCode());
System.out.println(Test.class.hashCode());
을 말한다 메소드 영역 (1 JVM). 이것은 또한 힙의 논리적 부분입니다.
메소드 영역로드 따라 다음의 데이터를 저장한다 :이 주요 방법, 또는 다음의 구조에 의존의 다른 클래스를 통해로드 될 때
그래서 케이스에 Test.class라는 메소드 영역에 존재할 것이다 클래스 : 메소드와 생성자에 대한
- 런타임 상수 풀
- 필드와 방법 데이터는
- 코드
new Test()
이 발생하면 Test 클래스의 새 인스턴스가 Test 유형의 Object를 나타내는 힙에 만들어집니다.
는
Where does class, object, reference variable get stored in java. IN heap or stack? Where is heap or stack located?
위의 포스트는 JVM의 저장 원리를 더 명확하게 설명합니다.
불투명 한 부분은 * 프로그램이 시작될 때 클래스 로더가 클래스 파일을로드하고 Class 클래스의 객체로 메모리에 저장하는 것을 이해합니다. * –
이 잘못 되었습니까? 그렇다면 실행주기를 배울 수있는 방향을 가리킬 수 있습니다. @YCF_L – rematnarab