JAVA의 정석 - 1단원

아빠는 외계연·2022년 11월 28일
0

JAVA

목록 보기
1/3

자바의 특징

  1. 운영체제에 독립적이다.
  • JVM(자바가상머신)이 자바 응용프로그램으로부터 전달받은 명령을 해당 운영체제가 이해할 수 있도록 변환하여 전달
  • 자바로 작성된 프로그램은 운영체제에 독립적이지만 JVM은 운영체제에 종속적
  • 자바로 작성된 프로그램은 운영체제와 하드웨어에 관계없이 실행가능
  1. 자동 메모리 관리
  • 자바로 작성된 프로그램이 실행되면, 가비지컬렉터(garbage collector)가 자동적으로 메모리를 관리해줌 -> 프로그래머는 따로 메모리를 관리하지 않아도 된다.
  1. 멀티쓰레드 지원
  • 자바에서 개발되는 멀티 쓰레드 프로그램은 시스템과 관계없이 구현가능. 관련된 라이브러리가 제공됨
  • 여러 쓰레드에 대한 스케줄링을 자바 인터프리터가 담당
  1. 동적 로딩을 지원
  • 필요한 시점에 클래스를 로딩하여 사용

JVM(자바 가상 머신)

  • 자바를 실행하기 위한 가상 컴퓨터
  • 계층구조
  1. JAVA 애플리케이션
  2. JVM
  3. OS
  4. 하드웨어
    -> Java 애플리케이션은 JVM을 거쳐서 OS로 전달됨. 실행시에 해석(interpret)됨

자바 프로그램의 실행과정

Hello.java 작성 -> 컴파일 -> Hello.class 생성 -> 실행

  • 컴파일 : 사람이 이해할 수 있는 언어를 컴퓨터가 이해할 수 있는 언어로 바꿔주는 과정

진행순서
1. 프로그램 실행에 필요한 클래스를 로드
2. 클래스 파일을 검사(파일형식, 악성코드 체크)
3. 지정된 클래스에서 main을 호출

profile
Backend Developer

0개의 댓글