


컴퓨터가 켜질 때 OS에 필요한 데이터들을 하드스크 에서 RAM으로 가져오는데 이때 RAM의 반을 사용한다.(로딩)
프로세스: 메모리에서 실행 중인 앱 또는 파일
데몬 프로세스: 꺼지지 않고 계속 실행 중인 프로세스
정적 메모리

jvm이 코드를 읽을때 바이트 코드로 변환한다.
-static을 찾는다
-jvm은 메모리에서 공간을 3개로 나눠 쓴다.
Static은 main이 실행 되기 전에 입력한다.
package ex04;
class Person1{ // class는 커스텀 자료형이다.
static int age = 20;
static char gender = '여';
}
public class MemEx01 {
public static void main(String[] args) {
System.out.println(Person1.age);
System.out.println(Person1.gender);
결과

동적 메모리

heap은 동적으로 띄우기 때문에 class이름으로 찾을 수 없다. 그러므로 변수(P2) 하나가 필요
* Person2 p2 = new Person2();
package ex04;
class Person2 {
int age = 10;
char gender = '남';
}
public class MemEx02 {
public static void main(String[] args) {
System.out.println("1년 지남");
System.out.println("2년 지남");
System.out.println("3년 지남");
Person2 p2 = new Person2();
System.out.println(p2.age);
System.out.println(p2.gender);
System.out.println("메인 종료");
}
}
결과

Share article