728x90
- [인프런]자바 프로그래밍 입문강좌 2강 Java 프로그램의 실행 구조 정리입니다.
- Java 언어를 이용해서 만들어진 프로그램이 어떻게 실행되는지 학습합니다.
2.1 환경변수 설정
- javac.exe, java.exe를 다른 디렉토리에서도 실행할 수 있도록 하기 위해 환경 변수(Path)에 bin 경로를 등록한다.
- java.exe : JVM 구동 명령 -> .class 파일을 실행할 수 있도록 한다
- javac.exe : 컴파일러 -> 소스를 기계어로 바꾼다. (.java 파일을 .class 파일로)






- 시스템 변수 : 이 pc를 사용하는 모든 사용자가 사용할 수 있는 변수 설정
- ~에 대한 사용자 변수 : 현재 사용자에게만 적용되는 변수 설정
- 경로명은 디렉터리 찾아보기나 파일탐색기에서 복사해서 사용하는 것을 권장한다.
=> 오타가 있으면 실행되지 않는다.
- cmd(명령 프롬프트)를 이용하여 java -version을 검색하면 버전을 확인해볼 수 있다.
2.2 Java 컴파일러와 JVM
- java 소스 작성 부터 프로그램 실행까지의 순서

- 다른 언어들도 비슷하게 진행이 된다.
- java 소스를 작성하는 것 까지만 개발자가 진행한다. 나머지는 이클립스나 pc가 알아서~
2.3 Java 프로그램 실행
- 이클립스가 아닌 메모장, 컴파일러(javac.exe) 그리고 JVM을 구동시키는 java.exe 를 이용해서 java 프로그램을 실행한다. -> 원리를 반드시 알아두어야 한다.
- 메모장을 이용해서 java 파일을 만든다.


- cmd(명령 프롬프트)를 이용해서 컴파일한다. -> .class 파일이 생성된다.


- 실행

=> 가장 원론적인 방법으로 코드를 작성하고 실행하는 방법
=> 이클립스와 같은 IDE가 얼마나 편한지를 확인하는 방법
2.5 가비지 컬렉터(Garbage Collector)
- 프로그램 실행에 필요한 메모리를 Garbage Collector가 자동으로 관리한다.
| C 계열 프로그램 | Java 프로그램 |
| 개발자가 직접 메모리를 관리 | 개발자가 메모리에 접근할 수 없음 |
| 메모리 관리를 잘못할 경우 메모리 누수가 발생하고 타 프로그램 동작이 멈출 수 있음 | 개발자는 메모리 관리를 할 수 업고, 가비지 컬렉터가 불필요한 메모리를 회수해서 메모리를 최적화 함 |
728x90
'Java' 카테고리의 다른 글
| 6강 연산자 (0) | 2021.07.31 |
|---|---|
| 5강 특수 문자와 서식 문자 (0) | 2021.07.30 |
| 4강 기본자료형 (0) | 2021.07.30 |
| 3강 변수 (0) | 2021.07.30 |
| 1강 Java 프로그래밍이란? (0) | 2021.07.28 |