- 인스턴스?
- 객체 : 속성과 행동으로 구성된 하나의 단위(전산화하려는 실체)
- 클래스 : 객체를 만드는 설계도
- 인스턴스 : 클래스를 메모리에 new 명령문으로 생성한 객체
- 자바의 메모리
- 메소드 영역 : class 파일 실행 시 JVM 클래스로더가 실행하기 위해 클래스의 메소드 및 레퍼런스를 메소드 영역에 올림모리
- 힙 영역 : 클래스의 인스턴스 생성될때 저장(필드값만)
- 스택 영역 : 자바가 접근할 수 있는 유일한 메모리, 힙 메모리에 할당된 인스턴스 참조 정보를 저장함, 지역변수 저장
- JVM에서 메모리 변수 검색 순서
- 1. 현재 실행 중인 메서드의 스택 영역 검색
- 2. 스택에 없으면 this가 참조하는 인스턴스 필드 검색
- static : 메소드 영역의 스태틱 존에 클래스파일 실행 시 바로 올라감
- 스태틱 붙은 필드, 메소드는 main() 실행 전에 메모리에 올림
- this : 클래스 주소, 클래스 내에서 this() 는 해당 클래스의 생성자 호출