라이프 사이클: 클래스 로딩->연결->초기화->사용->제거.
(추천 튜토리얼: Java 입문 튜토리얼)
상세 소개:
1. 클래스 로딩
클래스의 바이너리 데이터(클래스 파일 참조)를 찾아 로딩합니다. 하드 디스크에 있는 jvm 메모리
2. 연결: 클래스 간의 관계를 결정합니다. 예를 들어 person.setAddress(address) 주소 개체는 사람 개체에 중첩되어 있습니다
확인: 정확성 검사
준비: static 정적 변수는 메모리를 할당하고 초기화 기본값을 할당합니다.
예를 들어 static int num=10;
준비 단계에서 num=0으로 설정한 후 0을 10으로 변경합니다. 준비 단계에서는 num에 0 값만 할당됩니다. JVM에는 객체가 아닌 클래스만 있습니다.
초기화 순서: static->non-static->구성 방법
public class Student{ static int age;//준비 단계에서 age=0으로 설정
String name;
}
클래스 로딩 후 프로그램 학생 클래스만 있음, 아니 학생 객체에는 아직 Student s=new Student()
라는 문장이 없습니다. 분석: 클래스 내 기호 참조를 직접 참조로 변환
초기 단계에서 특정 메모리 주소 클래스는 아직 알려지지 않았으므로 학생 클래스 대신 com.pojo .Student 만 사용할 수 있습니다.
com.pojo.Student는 기호 참조가 됩니다.
파싱 단계에서 jvm은 com.pojo.Student를 실제 메모리 주소에 매핑한 다음 메모리 주소를 사용하여 Student를 대체할 수 있습니다. 클래스는 직접 참조가 됩니다
(동영상 튜토리얼 추천: java 동영상 튜토리얼)
3. 초기화:
예를 들어 static int num=10
준비 단계에서는 num=0, 그런 다음 (초기화 단계) 0을 10으로 변경합니다.
4. 사용법: 객체 초기화, 객체 가비지 수집, 객체 파괴
5. 제거:
jvm 수명 주기 종료 시간:
정상 종료
비정상 종료, 오류
시스템 .exit()
운영 체제 예외
위 내용은 Java 클래스의 라이프사이클 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!