JVM 3

[공부/Java] JVM, JRE, JDK

자바 가상 머신 (JVM, Java Virtual Machine) 각기 다른 플랫폼에 설치해 동일한 자바 실행 환경을 만들어주는 소프트웨어 Java는 JVM 덕분에 플랫폼에 종속적이지 않지만, JVM 자체는 플랫폼에 종속적이라 운영체제에 맞는 JVM을 설치해줘야 함 응용 프로그램을 구성하는 클래스 파일(.class)의 바이트 코드를 JVM 환경에서 실행 JVM은 자바 실행 환경인 JRE에 포함되어 있어 현재 사용하는 컴퓨터 운영체제에 맞는 자바 JRE가 설치되어 있다면 자바 가상 머신이 설치되어 있다는 의미 JVM을 사용함으로써 하나의 바이트 코드(.class)로 모든 플랫폼에서 동작할 수 있다는 것이 가장 큰 장점이다! JVM 동작 방식 1. 자바로 개발된 프로그램을 실행하면 JVM은 OS로부터 메모리..

공부/Java 2022.12.24

[공부/Java] JVM 구성 - Class Loader, Execution Engine, Garbage Collector

JVM의 구성요소 Class Loader Class Loader는 바이트코드(.class)를 읽어들여서 클래스 객체를 생성하는 역할을 담당한다. class 로딩은 Run-Time에 일어난다. 개발자가 new라는 예약어로 객체를 생성하는 코드를 처음 실행할 때 JVM은 만들 클래스를 Class Loader로 .class 파일을 최초로 메모리에 load한다. 최종적으로 Runtime Data Area의 Method Aread에 배치된다. Class Loader의 기술적 특징 Hierarchical : Class Loader 간에 계층형 구조를 가짐. 'bootstrap' Class Loader가 가장 최상위 Delegate load reqeust : 계층형 구조를 가지고 있어 어느 시점에 Class 로딩요청..

공부/Java 2022.12.24

[공부/Java] 자바의 특징, WORA, JVM, JDK, JRE, 배포판, 응용프로그램

자바의 특징 플랫폼 독립성 객체 지향 상속성, 다형성 클래스로 캡슐화되어 클래스 내에서 모든 변수, 함수를 구현하고 클래스 안에 새로운 내부 클래스 작성 가능 소스와 클래스 파일 하나의 소스 파일에 여러 클래스 작성 가능 단, public 클래스는 하나만 가능하며 소스 파일의 이름과 public클래스의 이름이 같아야 함 각각의 클래스마다 파일이 만들어짐 내부 클래스의 경우 외부클래스$내부클래스.class 파일로 생성 실행 코드 배포 여러 폴더에 걸쳐 다수의 클래스 파일로 구성된 경우 jar 파일 형태로 배포 가능 main()메소드는 한 클래스에 하나만 존재 패키지 관련된 여러 클래스를 패키지로 묶어 관리 멀티스레드 운영체제의 도움 없이 JVM으로 자체적인 멀티스레드를 지원 모듈 프로그래밍 - Java9부..

공부/Java 2022.07.01
728x90