[Java] Java의 기본 개념 (01.02)

늘보·2025년 1월 2일

Java

목록 보기
4/17
post-thumbnail

JVM(Java Virtual Machine)

JVM이란?

어디서든, 어떤 환경이든 가상머신이 존재하기 떄문에 Java 코드를 구현할 수 있다. 즉, JVM은 가상의 기기를 만들어주는 자바 가상 머신이다.


바이트 코드

Java 컴파일러가 운영체제가 읽을 수 있는 readable한 코드로 바꾼 것을 바이트 코드 라고 한다.

💡 Java 컴파일러: .java라는 파일을 .class라는 파일로 변환해 주는 역할을 한다.

    .java: 사람이 이해할 수 있는 코드를 의미한다.
    .class: 운영체제가 이해할 수 있는 코드를 의미한다.


인터 프리터

운영체제가 읽는 바이트 코드를 기계가 실행할 수 있는기계어로 변역하는 것

💡Jit 컴파일러: 인터프리터의 효율울 높여주는 역할을 한다.


메모리 영역

Java의 데이터를 저장하는 영역으로 자신의 환경(Window, Mac)에서 JVM 가상 머신이 돌아갈 수 있도록 영역을 할당해 주어야 한다.

이처럼 할당된 영역을 메모리 영역이라고 할 수 있다.

💡클래스 로더: 바이트 코드를 메모리 영역으로 운반하는 역할을 한다.


가비지 컬렉터

메모리 영역에서 사용하지 않는 데이터를 제거해준다.

❗ 이를 통해 메모리 공간이 효율적으로 사용될 수 있도록 해준다.

Java의 개발환경 구성

JRE (Java Runtime Evironment)

JVM을 설치하기 위해서는 JRE 환경을 구축해야한다.

JRE는 환경이기 때문에 JDK (Java Development Kit)가 필요하다.


JDK (자바 개발 키트)

  • JDK는 JRE를 포함하고 있다.
  • .java.class로 변환해주는 Java compiler (Javac) 기능이 존재한다.
  • 디버깅 (JDB) 기능도 되어있다.

💡디버깅: 코드를 자세히 살펴 오류를 없애는 부분


Java의 Main 메서드

클래스

java 파일을 만들게 되면 아래와 같은 화면이 출력된다.

  • 클래스 .java를 .class로 바꿀 때 기준이 되는 영역이다.

파일(Main.java) 내의 클래스는 반드시 파일명(Main)과 동일해야한다.


메서드 (함수)

💡{} 들여쓰기한 것을 하위요소 (메서드)라고 한다.
이러한 메소드는 Inputoutput을 가지고 있다. (생성자와의 구별점)


객체

모든 것을 표현하기 위한 개념으로 특징과 행동을 지닌다.
이때, 특징 속성 행동메서드라고 할 수 있다.

위의 그림에서 out: 객체이고 println: 메소드이다.

profile
누워만 있지 말고 제발 뭐라도 하자.

2개의 댓글

comment-user-thumbnail
2025년 1월 2일

잘 봤습니다. 정리 잘하시네요 이해 잘 됩니다.

1개의 답글