클래스 로더(Class Loader)자바는 컴파일 타임이 아닌 런타임(Byte Code를 실행하는 시점)에 클래스를 로드하고 링크하는 특징을 가지고 있습니다. 이를 동적 로드라 합니다. 이러한 동적 로드를 담당하는 것이 JVM의 구성 요소 중 하나인 클래스 로더(Class Loader) 입니다. 클래스 로더(Class Loader)는 JVM의 Runtime Data Area의 메소드 영역(=Method Area, Static Area, Class Area)에 동적으로 클래스를 로드하는 역할을 합니다. 이러한 클래스 로더는 로딩, 링크, 초기화 단계로 나뉘어져 있습니다. 클래스 로더의 3단계로딩(Loading)자바 바이트 코드(.class)를 메소드 영역에 저장합니다.각 자바 바이트 코드(.class)는 ..
JDK(=Java Development Kit)란?Java Application을 개발하기 위해 필요한 도구들의 모음입니다.이는 개발자가 Java 코드를 작성하고 컴파일하여 Byte Code로 변환하는데 사용됩니다.JDK는 Java Compiler, JRE, Java Development Tools로 구성되어 있습니다. JDK는 Oracle Corporation에서 출시한 아래 Java 플랫폼들 중 하나를 구현한 것입니다.Java 플랫폼Java SE: Java Platform, Standard Edition표준 자바 플랫폼으로 표준적인 컴퓨팅 환경을 지원하기 위한 자바 가상머신 규격 및 API 집합을 포함합니다.Java EE, Java ME는 구체적인 목적에 따라서 이 Java SE를 기반으로 API 추..
JVM(=Java Virtual Machine)OS(=운영체제)에 구애 받지 않고 CPU가 자바를 인식, 실행할 수 있게 하는 일종의 가상 컴퓨터입니다.따라서, Java는 JVM으로 인해 "운영체제에 독립적이다."는 장점이 있습니다. 컴파일 과정 원시 코드(=*.java)는 CPU가 인식하지 못하기 때문에 반드시 기계어로 컴파일 해야 합니다.Java는 JVM을 거쳐 OS에 도달하기 때문에 곧바로 OS가 인식할 수 있는 기계어로 컴파일 되지 않고, JVM이 인식할 수 있는 Byte Code(=*.class)로 변환됩니다. Java compiler를 통해 변환된 Byte Code는 기계어가 아니기 때문에 OS가 해석할 수 없습니다.따라서, JVM을 통해 Byte Code를 OS가 해석할 수 있는 기계어로..
- Total
- Today
- Yesterday