https://www.java.com/ko/download/help/mac_install.html
운영체제가 Java Virtual Machine(JVM)을 실행 시키고, JVM이 Java프로그램을 실행시키는 구조로 작동한다.
JVM은 운영체제에서 실행 시키는 여타 다른 프로그램들(Chrome, vscode 등)과 다를 것이 없다.
운영체제가 직접 Java프로그램을 실행하는 것이 아니라, JVM에 의해 Java프로그램이 실행되도록 한 이유?
운영체제의 종류에 관계 없이 Java프로그램을 실행시키기 위함이다.
JVM이 이해할 수 있는 코드를 생성해내는 역할을 한다.
javac.exe : Java컴파일러
java.exe: Java Launcer. JVM을 구동하고 그 위에 Java프로그램이 실행되도록 돕는다.
*java 파일
을 javac.exe를 이용해 컴파일한다.
컴파일이란 다시 말해 '실행을 위한 상태로의 변경'을 의미한다.
$ javac 파일이름.java
이 과정을 거치면 *class 파일
이 생성된다.
java.exe를 이용해 java프로그램을 실행한다.
$ java 파일이름 // 확장자 없이 오직 파일의 이름만
컴파일 시와 달리 파일의 실행에는 확장자를 생략한다.
class FirstJavaProgram // FirstJavaProgram: 클래스 이름
{
public static void main(String[] args) // main: 메서드 이름
{
System.out.println("Welcome to Java");
System.out.println("First Java Program");
// System.out.println은 출력 이후 행(line)을 바꾼다
}
}
// >> Welcome to Java
// >> First Java Program
python에서의 print()
함수와 동일한 기능을 한다.
class SystemOutPrintln{
public static void main(String[] args){
System.out.println(7);
System.out.println(3.15);
System.out.println("3 + 5 = 8");
System.out.println(3.15+"는 실수입니다.");
System.out.println("3 + 5" + "의 연산 결과는 8입니다.");
System.out.println(3+5);
}
}
// 7
// 3.15
// 3 + 5 = 8
// 3.15는 실수입니다.
// 3 + 5의 연산 결과는 8입니다.
// 8
+
기호로 다른 내용들을 묶어서 출력할 수 있다주석은 들여쓰기 및 컴파일의 대상에서 제외된다.
/*
파일이름: BlockComment.java
작성자: 홍길동
작성일: 2022년 01년 06일
목적: System.out.println 메소드의 기능 테스트
*/
class BlockComment{
public static void main(String[] args){
//System.out.println(3+5);
...
}
}