Java

Java 개념

sounglikane 2024. 9. 2. 11:39

Java 개념

Java는 객체지향 (Object-Oriented Programming, OOP) Programming 언어입니다. 객체지향 프로그래밍은 코드의 재사용성, 확장성, 유지보수성을 높이는 데 중점을 둡니다.

 

Java Virtual Machine(JVM)

JVM은 Java program을 실행하는 데 중요한 역할을 하는 가상 머신입니다. JVM은 Java의 핵심 요소 중 하나로, Java의 "Write Once, Run Anywhere"(한 번 작성하면 어디서나 실행 가능)이라는 철학을 실현하는 중요한 요소입니다.

 

JVM 구성

1. Byte code (바이트 코드)

작성한 코드가 운영체제가 읽을 수 있는 코드(바이트 코드💬)로 Java Complier(컴파일러가) 변환한 코드입니다.

 

※ Compiler ※ : 작성한 Java 코드들(.java 파일)을 운영체제가 읽을 수 있는 바이트 코드(.class 파일)로 변환하는 변환기입니다. 

 

2. Interpreter (인터프리터)

Java Interpreter는 Java .class 코드 해석기의 역할을 하는 것입니다. 운영체제가 읽은 바이트 코드를 기기(기계)가 실행할 수 있는 기계어로 번역하는 것입니다.

 

3- Just-In-Time Compiler (JIT 컴파일러)

반복적으로 실행되는 바이트코드를 컴파일하여 네이티브 코드로 변환한 후, 이후에는 네이티브 코드를 직접 실행합니다. 이로 인해 성능이 크게 향상됩니다.

 

4- 메모리 영역

Java 데이터를 저장하는 영역입니다. 운영체제로부터 JVM이 할당받은 메모리 영역이라도 볼 수 있습니다.

 

5- Class Loader(클래스 로더)

Class Loader는 Java 프로그램에서 사용되는 클래스 파일을 동적으로 메모리에 로드하는 역할을 합니다. 

 

 

6- Garbage Collector (가비지 컬렉터)

Garbage Collector는 더 이상 참조되지 않는 객체를 메모리에서 자동으로 제거하여 메모리 누수를 방지합니다.

 

 

 

 

 

JDK (Java Development Kit)

JDK(Java Development Kit)는 자바 애플리케이션을 개발하기 위한 소프트웨어 개발 도구 모음입니다. JDK는 자바 프로그램을 작성, 컴파일, 디버그, 실행할 수 있는 다양한 도구와 라이브러리를 제공합니다.

 

JDK의 주요 구성 요소

1- JVM

2- Java Running Environment(JRE): JRE는 Java 애플리케이션을 실행하기 위한 환경입니다. JRE는 JVM과 자바 클래스 라이브러리로 구성되며, 자바 프로그램을 실행할 수 있도록 지원합니다.

3- Java Debugger(JDB): JDB는 Java 프로그램을 디버깅할 수 있는 도구입니다. 프로그램 실행 중 중단점(breakpoint)을 설정하거나 변수 값을 조사하는 등의 작업을 할 수 있습니다.

 

 

'Java' 카테고리의 다른 글

Java Error & Exception  (0) 2024.09.09
Interface, Default, Static, Polymorphism(다형성)  (0) 2024.09.09
Java (접근 제어자, 상속의 개념)  (0) 2024.09.05
Java Class  (0) 2024.09.04
Java 변수(Variable)  (0) 2024.09.03