jiisuniui.log
로그인
jiisuniui.log
로그인
[Java] Java와 JVM
Jiisuniui
·
2023년 10월 19일
팔로우
0
Java
Java의 모든 것
목록 보기
1/7
Java 특징
객체 지향 및 네트워크 중심 언어
공통 실행환경(JVM)이 있어서 여러 운영체제에서 실행 가능
앱 개발에 적합
ex) mobile app, server app, web 등
안정성이 높아서 프로그래밍 오류를 방지하고 보안상 안전
byte code로 변환하는 compiler가 오류를 먼저 체크
java 자체에서 지원하는 보안 기술
대규모 앱 개발 가능
network 및 db 연결 및 통신 등의 작업을 처리하는 API가 제공
다양한 개발도구와 라이브러리 사용
Java 구성
1. ⛳️ JVM (Java Virtual Machine)
자바 가상 머신
여러 운영체제에 Java 프로그램을 실행시킬 수 있는 가상의 기기를 만들어 주는 것
.java(Code) -> Java Compiler -> .class -> JVM -> Device
2. 💬 Bytecode
운영체제가 읽을 수 있는 Bytecode
java file -> class file
3. 📇 인터프리터
Java .class 코드 해석기
운영체제가 읽은 Byte Code를 기계가 실행할 수 있는 기계어로 번역
4. 📇 JIT(Just In Time) 컴파일러
빠른 Java .class 코드 해석기
인터프리터의 효율을 높여주는 서포터 해석기
5. 🗂 메모리 영역
Java 데이터를 저장하는 영역
운영체제로부터 JVM이 할당받은 메모리 영역
6. 🚚 클래스 로더(Class Loader)
.class(Bytecode)를 메모리 영역에 담는 운반기
JVM으로 class(Bytecode)를 불러와서 메모리에 저장함
7. 🧹 가비지 컬렉터
Java 쓰레기 청소기
메모리 영역에서 안 쓰는 데이터를 주기적으로 흡수해가는 청소기
8. 🎡 JVM 동작방식
Runtime:
프로그램이 실행중인 상태
Runtime 시스템:
프로그램이 실행중인 상태를 관리하는 시스템
Java 환경 구성
1. JRE (Java Runtime Environment)
자바 실행 환경
JRE(JVM)은 .class 파일만 실행 가능
2. JDK (Java Development Kit)
자바 개발 키트
Java Compiler(javac): .java를 .class로 변환
JRE(JVM): 자바 실행 환경
JDB: 디버깅
참고하면 좋은 포스트
JVM은 무엇이며 자바 코드는 어떻게 실행하는 것인가
Jiisuniui
why error?
팔로우
다음 포스트
[Java] 변수와 데이터 타입, Wrapper 클래스, 형변환
0개의 댓글
댓글 작성