JDK에는 W.O.R.A 라는 개념이 있다.
Write Once Run Anywhere
JDK의 가장 대표적인 개념이다.
Write Once Run Anywhere
출처 입력
C 컴파일러는 JDK와 다르다.
C는 컴파일되면
바이너리(Binary) 코드 실행파일이 생성된다.
바이너리 코드(10001011...)는 CPU가 이해하는 언어다.
(바이트 코드는 JVM이 이해하는 언어다.)
즉,
C컴파일러는 컴퓨터 환경과 직결되는
바이너리 코드를 실행파일로 만든다는 의미다.
이를 다시 말하면
Window에서 작성된 바이너리 코드 실행파일은
Linux에서 작동이 안 된다는 말이다.
즉, 어디서든(Anywhere)
실행(Run)되지 않는다는 것이다.
이런 단점을 보완하고자
JDK는 컴파일과 OS사이에
JVM이라는 가상프로그램을 둔다.
(JDK설치하면 JVM도 같이 설치됨)
JVM을 설치하면
'바이트 코드'를
환경에 맞게 알아서
'바이너리 코드'로 만들어 준다.
그러므로 C컴파일러와는 다르게
컴파일하여 만든 실행파일이
다른 환경에서 동작되지 않는
불상사가 일어나지 않는다.
JVM으로 .class(바이트코드) 보내기
우리는 전 포스팅에서
javac 명령어로 바이트코드 파일을 만들었다.
이를 JVM으로 보내야 한다.
cmd창에
java Helloworld
(.class 확장자 생략가능)
를 쳐본다.
Hello world가 출력되었음을 확인할 수 있다.
java 명령어는
.class 파일(바이트 코드 파일)을
JVM에게 넘기라는 의미다.
이렇게 우리는 JDK를
이용하여 자바코드로 작성된 파일을
출력시키는 실습을 해보았다.
하지만 언제까지 메모장으로
자바 코드를 작성할 수는 없지 않은가?
자바 코드를 좀 더 손쉽게 작성할 수 있도록
도와 주는 개발 툴이 있다.
그것이 바로 '이클립스(eclipse)'다.
다음 포스팅은 통합개발환경(IDE)인
이클립스에 대한 내용을 작성해보겠다.
'JAVA > JAVA Basic' 카테고리의 다른 글
[ JAVA ] 이클립스 Failed to init ct.sym 에러 해결 (feat. JAVA SE15) (프로젝트 생성 에러) (0) | 2021.06.18 |
---|---|
[ JAVA ] 이클립스 설치하기 (0) | 2021.06.18 |
[ JAVA ] JDK 사용하기 1 (0) | 2021.06.18 |
[Java] 조건문과 반복문 심화 (0) | 2020.11.22 |
[Java] 연산자 정리하기 (0) | 2020.11.21 |