[JAVA-1]. 자바란?

ParkJunHa·2023년 9월 18일

옵시디언을 통해 정리한 노트 백업용.

Hello! JAVA.

프로그래밍 언어를 배울때 가장 먼저 만드는 프로그램인 Hello World.java 파일을 우선 만들어보자

개발환경은 IntelliJ IDEA이며, OpenJDK 16 버전을 사용하여 개발환경을 구축하였다.

public class Main{  
    public static void main(String [] args){  
        System.out.println("Hello World!");  
    }  
}
  • Practice/src/Main.java 안에 작성된 코드이고, class명과 파일명이 같아야 한다.
  • 당연하게도 파일의 확장자는 .java 여야 한다.
  • 자바 소스코드의 클래스의 첫글자는 반드시 대문자여야 한다. (규약인건지?)
  • 자바 프로그램의 시작점은 main 매서드 이다.

터미널에서 컴파일하기

❯ javac Main.java
❯ java Main
Hello World!
  ~/De/J/m/p/src                                          ✔ │ 09:54:44 PM

javac 명령어를 이용해 컴파일 하고 java 키워드를 이용해 실행시킨다.

IntelliJ에서 컴파일하기

command + R만 눌러주면 된다.

JDK(Java Development Kit)의 구성요소

JDK는 JRE와 자바 프로그램 개발 도구로 이루어져 있다.
JRE는 Java Runtime Environment의 약자로, 자바 프로그램 실행 환경이다. 우리가 컴파일하고 개발한 클래스를 실제 실행할 때 JRE가 실행되어 클래스가 원활하게 실행되도록 하는 역할이다.

앞서 Hello World! 프로그램에서 javacjava가 자바 개발 도구의 예시이다.
자바로 컴파일된 프로그램을 실행하기 위해서는 JRE가 필요하고, 실제로 자바 소프트웨어를 사용할 때 JRE만 설치해주면 소프트웨어를 정상적으로 사용할 수 있다.

JRE(Java Runtime Environment)

JVM(Java Virtual Machine)

자바 프로그램을 실행 시 자바 프로그램을 실행하는 가상의 CPU이다. 가상의 CPU는 자바 바이트코드를 실행시키는 일종의 인터프리터이다.

실제로 우리가 java.exe를 실행시키게 된다면, 실제 클래스 파일이 아니라 JVM이 실행되게 되는 것이다. JVM이 지정한 16bit 코드로 이루어진 클래스 파일을 이진 코드로 바꾸어 실행한다.

API (Application Programming Interface)

자바에서 미리 만들어둔 클래스라고 생각하면 된다. 예를들어 Hello World! 프로그램에서 사용한 System.out.println()은 자바에서 콘솔로 출력하기 위한 기능을 클래스로 제공한 것이다.

우리가 자바로 프로그래밍을 한다. 라는것은 자바에서 제공하는 API의 사용법을 익힌 후 원하는 기능을 소스코드로 작성하는 것을 의미한다.

자바의 특징

  • 자바는 컴파일 언어와 인터프리터 언어의 특징을 모두 가지고 있다.
    - 자바를 실행하면 JVM에서 OS와 CPU에서 실행할 수 있는 명령어로 변환하고 이를 CPU에서 실행한다.
    - 즉, 운영체제와 상관없이 실행 가능하다는 특징을 갖는다.

자바의 실행과정

  1. 자바 소스파일을 자바 클래스 파일로 컴파일한다 (javac)
  2. 자바 클래스 파일(16바이트 코드)를 JVM 에서 실행한다.
  3. JVM에서 클래스의 16바이트코드를 바이너리 코드로 바꾼다.
  4. 바이너리 코드를 운영체제와 CPU를 이용해 실행한다.
profile
PS린이

0개의 댓글