static 변수 public calss MyClass { static int myStaticVariable = 100; int myVariable = 200; } 위의 예제로 각 변수가 생성되는 공간에 대해 설명해본다. 자바 프로그램을 시작하면 JVM이 클래스 파일을 읽어 필요한 클래스와 변수/메서드들을 메모리에 생성한다. 이후 코드에서 그 클래스의 형을 가진 오브젝트를 생성하면 각 오브젝트마다 myVariable을 저장할 메모리 공간이 Heap이라는 메모리 공간에 생기게 된다. 모든 오브젝트는 Heap이라고 부르는 메모리 공간에 생긴다. 반면 static 변수는 Heap이 아닌 다른 공간에 생긴다. 이 공간의 이름은 MetaSpace이다. 위의 그림처럼 static 변수는 클래스에 귀속되지 각각의 오..