IT Developer/Java

Java 기초 <1. Java 소개 및 특징>

TEMA_ 2025. 3. 2. 20:21
반응형

자바 Java

1. Java 소개 및 특징

 

안녕하세요! 태마입니다.

Java 기초 강좌입니다.

 

강좌의 경우 

1. 주제 간단 정리

2. 상세 주제 정리

으로 이루어져 있습니다.

 

자바 Java

포스팅 시작하겠습니다 :)

 

 

 

1. 주제 간단 정리

 

1. Java란?

Java는 1995년 Sun Microsystems(현재 Oracle)에서 개발한 객체지향 프로그래밍 언어입니다.
현재도 전 세계적으로 가장 널리 사용되는 프로그래밍 언어 중 하나입니다.

📌 Java의 대표적인 특징
"Write Once, Run Anywhere" → 한 번 작성하면 어디서든 실행 가능
객체지향 프로그래밍(OOP) 지원 → 유지보수와 확장성이 뛰어남
자동 메모리 관리(GC) → 개발자가 직접 메모리를 관리할 필요 없음
강력한 보안성 → 금융, 공공기관에서도 널리 사용됨
대규모 애플리케이션 개발에 적합 → 엔터프라이즈 솔루션, 백엔드 개발에서 활발히 사용

 

2. Java는 어디에서 사용될까?

Java는 다양한 분야에서 활용되며, 다음과 같은 대표적인 사용 사례가 있습니다.

사용 분야설명예제

웹 애플리케이션 개발 백엔드 서버 구축 Spring Boot 기반 웹 서비스
모바일 앱 개발 안드로이드 애플리케이션 카카오톡, 유튜브, 네이버 앱
대규모 서버 시스템 금융, 공공기관, 기업용 시스템 은행 거래 시스템, 공공 데이터 관리
빅데이터 & 클라우드 데이터 분석 및 분산 처리 Apache Hadoop, Spark
임베디드 시스템 IoT 및 소형 장치 개발 스마트 홈 디바이스, 자동차 시스템

📌 Java는 엔터프라이즈 환경에서 강력한 성능을 발휘하며, 개발자가 많아 생태계도 풍부함!

 

3. Java가 여전히 인기 있는 이유

Java는 20년 넘게 사용되고 있지만, 여전히 많은 기업과 개발자들이 사용하고 있습니다.
그 이유는 다음과 같습니다.

강력한 오픈소스 프레임워크 제공 → Spring, Hibernate, JPA 등
안정적인 실행 환경 → 대규모 기업 시스템에서 검증됨
멀티 플랫폼 지원 → 윈도우, 맥, 리눅스 등 어디서든 실행 가능
활발한 커뮤니티와 풍부한 자료 → 문제 해결이 용이함

📌 여전히 Java를 배우는 것은 개발자로서 강력한 경쟁력을 갖추는 길!

여기까지 Java가 무엇인지, 어디에서 사용되는지 기본 개념을 배웠어요!
👉 "Java의 구조와 실행 원리까지 깊이 이해하고 싶다면?"
2부에서 JVM, 바이트코드, Java의 실행 과정 등을 상세히 배워봅시다!

반응형

 

2. 상세 주제 정리

1. Java는 어떻게 실행될까?

Java는 다른 프로그래밍 언어(C, Python 등)와 다르게 JVM(Java Virtual Machine) 을 사용하여 실행됩니다.
즉, 운영체제(OS)와 직접적으로 실행되지 않고, JVM이 중간에서 바이트코드를 해석하여 실행합니다.

📌 Java 실행 과정 개요
1️⃣ .java 소스 코드 작성
2️⃣ javac(컴파일러)로 바이트코드(.class 파일) 변환
3️⃣ JVM이 바이트코드를 실행하여 프로그램 구동

 

2. JVM, JRE, JDK의 차이점

Java 실행 환경을 구성하는 주요 요소는 다음과 같습니다.

구성 요소설명

JDK (Java Development Kit) Java 개발 도구 (JRE + 컴파일러 포함)
JRE (Java Runtime Environment) Java 실행 환경 (JVM + 라이브러리)
JVM (Java Virtual Machine) 바이트코드를 해석하여 OS에 맞게 실행

JDK = JRE + 개발 도구 (컴파일러 포함)
JRE = JVM + 실행 라이브러리
JVM = Java 프로그램 실행기

📌 즉, 개발하려면 JDK가 필요하고, 실행만 한다면 JRE만 설치하면 됨!

 

3. JVM의 내부 구조 – Java 실행의 핵심

JVM은 Java 프로그램을 실행하는 중요한 역할을 합니다.
다음은 JVM의 내부 구조입니다.

JVM 구성 요소설명

클래스 로더(Class Loader) .class 파일을 JVM 내부로 로드
바이트코드 검증기 바이트코드가 정상적인지 검사
JIT(Just-In-Time) 컴파일러 실행 속도를 높이기 위해 바이트코드를 네이티브 코드로 변환
Garbage Collector(GC) 사용하지 않는 객체를 메모리에서 자동 정리

📌 JVM 덕분에 Java는 운영체제에 독립적인 언어가 될 수 있음!

 

4. Java의 메모리 구조 – 프로그램이 실행될 때 메모리는 어떻게 사용될까?

Java 프로그램이 실행될 때 JVM 내부에서 메모리가 다음과 같이 관리됩니다.

메모리 영역설명

Method Area (메타스페이스) 클래스 정보, static 변수 저장
Heap 객체(인스턴스)가 저장되는 공간
Stack 메서드 호출 시 지역 변수 저장
PC Register 현재 실행 중인 명령어 주소 저장
Native Method Stack Java 외의 네이티브 코드(C, C++) 실행

📌 Java는 자동 메모리 관리(GC)를 통해 개발자가 직접 메모리를 해제하지 않아도 됨!

 

5. Java의 실행 과정 – 컴파일부터 실행까지

Java 프로그램이 실행되는 전체 과정을 정리하면 다음과 같습니다.

1️⃣ 소스 코드 작성 (.java 파일 생성)
2️⃣ javac(컴파일러)가 .class(바이트코드)로 변환
3️⃣ JVM이 .class 파일을 실행 (인터프리터 + JIT 컴파일러 활용)
4️⃣ 필요 없는 객체를 Garbage Collector(GC)가 자동 정리

📌 이 과정을 거쳐 Java 프로그램이 실행되므로, OS와 상관없이 동일한 코드가 동작 가능!

 

지금까지 Java의 실행 원리와 내부 구조를 상세히 배웠어요!
👉 "이제 Java 개발 환경을 구축하고 JDK, JRE, JVM을 직접 다뤄보고 싶다면?"
다음 회차에서 Java 개발 환경 설정과 JDK, JRE, JVM 설치 방법을 배워봅시다!

 

 

반응형