[인프런] 김영한의 자바 입문 - 1

김다은·2024년 3월 7일

JAVA

목록 보기
1/14
post-thumbnail

이 게시글은 인프런 "김영한의 자바 입문" 강의를 바탕으로 작성했습니다:)

Hello World

자바 프로그램 실행

HelloJava

public class HelloJava {//HelloJava 클래스의 범위 시작
    public static void main(String[] args){ //main() 메서드의 범위 시작
        System.out.println("hello java");
    }//main() 메서드의 범위 끝
}//HelloJava 클래스의 범위 끝

실행 결과
hello java

코드 분석

public class HelloJava

  • HelloJava를 클래스라 한다.
  • HelloJava.java 파일명과 HelloJava 클래스 이름이 같아야 한다.
  • {} 블록을 사용해서 클래스의 시작과 끝을 나타낸다.

public static void main(String[] arg)

  • main 메서드라 한다. 프로그램의 시작점이라고 이해하면 된다.
  • 자바는 main(String[] args) 메서드를 찾아서 프로그램을 시작한다.
  • {} 블록을 사용해서 메서드의 시작과 끝을 나타낸다.

System.out.println("hello java")

  • System.out.println: 값을 콘솔에 출력하는 기능이다.
  • "hello java": 자바는 문자열을 사용할 때 "(쌍따옴표) 사이에 원하는 문자열을 감싸면 된다.
  • ;:자바는 세미콜론으로 문장을 구분한다. 문장이 끝나면 세미콜론을 필수로 넣어주어야 한다.

❇️ 괄호
- 소괄호 ()
- 중괄호 {}
- 대괄호 []

실행과정

  1. HelloJava 프로그램을 실행한다.
  2. 자바는 시작점인 main() 메서드를 실행한다.
  3. System.out.println("hello java")을 만나고, 문자열 hello java을 출력한다.
  4. main() 메서드의 {} 블록이 끝나면 프로그램은 종료된다.

HelloJava2

public class HelloJava2 {
    public static void main(String[] args){
        System.out.println("hello java1");
        System.out.println("hello java2");
        System.out.println("hello java3");
    }
}

실행 결과

hello java1
hello java2
hello java3

프로그램은 main()을 시작으로 위에서 아래로 한 줄 씩 실행된다.

자바란

자바 표준 스펙과 구현

  • 자바 표준 스펙

    • 자바는 이렇게 만들어야 한다는 설계도이며, 문서이다.
    • 이 표준 스펙을 기반으로 여러 회사에서 실제 작동하는 자바를 만든다.
  • 다양한 자바 구현

    • 자바 표준 스펙에 맞추어 실제 작동하는 자바 프로그램을 개발한다.

    • 자바 구현들은 모두 표준 스펙에 맞도록 개발되어 있다. 따라서 오라클 Open JDK를 사용하다가 Amazon Corretto 자바로 변경해도 대부분 문제 없이 동작한다.

컴파일과 실행

  • 자바 프로그램은 컴파일과 실행 단계를 거친다.
    • Hello.java`와 같은 자바 소스 코드를 개발자가 작성한다.
    • 자바 컴파일러를 사용해서 소스 코드를 컴파일 한다.
      • 자바가 제공하는 javac라는 프로그램을 사용한다.
      • .java.class 파일이 생성된다.
      • 자바 소스 코드를 바이트코드로 변환하며 자바 가상 머신에서 더 빠르게 실행될 수 있게 최적화하고 문법 오류도 검출한다.
    • 자바 프로그램을 실행한다.
      • 자바가 제공하는 java라는 프로그램을 사용한다.
      • 자바 가상 머신(JVM)이 샐행되면서 프로그램이 동작한다.

IDE와 자바

  • 인텔리제이는 내부에 자바를 편리하게 설치하고 관리할 수 있는 기능을 제공한다.

인텔리제이를 통한 자바 컴파일, 실행 과정

  • 컴파일
    • 자바 코드를 컴파일 하려면 javac라는 프로그램을 직접 사용해야 하는데, 인텔리제이는 자바 코드를 실행할 때 이 과정을 자동으로 처리해준다.
      • ex. javac Hello.java
    • 인텔리제이 화면에서 프로젝트에 있는 out폴더에 가보면 컴파일된 .class파일이 있는 것을 확인할 수 있다.
  • 실행
    • 자바를 실행하려면 java라는 프로그램을 사용해야 한다. 이때 컴파일된 .class파일을 지정해주면 된다.
      • ex. java Hello, 참고로 확장자는 제외한다.
  • 인텔리제이에서 자바 코드를 실행하면 컴파일과 실행을 모두 한 번에 처리한다.

자바와 운영체제 독립성

  • 일반적인 프로그램은 다른 운영체제에서 실행할 수 없지만, 자바 프로그램은 자바가 설치된 모든 OS에서 실행할 수 있다.

  • 개발할 때 자바와 서버에서 실행할 때 다른 자바를 사용할 수 있다.

profile
꾸준함으로 성취하는 개발자

0개의 댓글