JVM 방법 영역
6992 단어 자바 가상 컴퓨터 편자바androidjvm
먼저 특징 1.방법 구역(Method Area)은 자바 더미 와 마찬가지 로 모든 스 레 드 가 공유 하 는 메모리 영역 입 니 다.2.자바 가상 컴퓨터 규범 은 방법 구역 을 쌓 는 논리 적 인 부분 으로 묘사 하지만 Non-Heap(비 쌓 기)라 는 별명 이 있 습 니 다.목적 은 자바 더미 와 구분 하 는 것 입 니 다.사실 이해 하기 도 좋 습 니 다.바로 일부 class 유형의 대상 입 니 다.예 를 들 어 Object.class 도 대상 입 니 다.다만 대상 은 사용 할 대상 이 아니 라 금 형 대상 으로 진정 으로 필요 한 대상 을 만 드 는 대상 이다.예 를 들 어 월병 을 만 들 려 면 틀 이 필요 하고 월병 은 대상 이 며 틀 도 대상 이다.이것 은 틀 입 니 다.창고 에 보관 하 는 것 이 아니 라 가공 공장(방법 구역)이 존재 합 니 다.본질 적 으로 모두 저장 대상 의 곳 입 니 다.다만 방법 구역 은 미리 준비 해 야 합 니 다.3.미리 준비 해 야 하기 때문에 클래스 로 더 를 통 해 바이트 코드 class 파일 을 방법 구역 에 불 러 오 면 진정한 모드 가 됩 니 다.우리 가 쓴 자바 파일 은 컴 파일 을 거 친 후에 하나의 모드 의 도면 이 라 고 할 수 있 습 니 다.classloader 로 불 러 온 후에 야 진정한 대상 을 만 들 수 있 는 모드 가 될 수 있 습 니 다.4.정적 구성원 은 클래스 변수 로 field 에 저 장 됩 니 다.info 표 에서;정적 방법 은 method 에 저 장 됩 니 다.info 표 에서;대상 이 어디 에 저장 되 어 있 는 지,예 를 들 어 아래 의 것 을 보아 야 한다.
// , "str", new String(); ,
String str = new String("str");
// , String , , , , new , "str" ,
String str = new String(new Object().toString());
classload 가 불 러 온 클래스 의 내용
유형 정보
public static String a = "a";
public static String b = "b";
public static String a_b = "a" + "b";
public static String a_b_ = "a" + "b";
public static String ab = a + b;
public static String ab2 = a + b;
public static void main(String[] args) {
System.out.println(a_b == a_b_);//true
System.out.println(ab == ab2);//false
}
코드 와 우 리 를 통 해 알 수 있 듯 이 할당 할 때 변 수 를 더 하면 실행 시 상수 이 고 결 과 는 false 입 니 다.만약 두 개의 확실한 String 대상 이 변 한다 면,그것 은 true 이 고,상수 탱크 입 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
【eclipse】같은 파일을 2개 열고 싶다【에디터의 분할】「이런 것은 다른 클래스로 나누어야 한다!」라든지 있다고는 생각합니다만. 실제로 실무 속에서 프로그램을 쓰고 있으면, 이런 소스에 눈에 걸리는 일도 적지 않을까···. 그건 그렇고, 내 노트북에서 이렇게 보입니다 네...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.