# JAVA

## JAVA의 특징



#### **Compiled vs Interpreted**

<figure><img src="https://3814826491-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJyHOwztPxBT3bLpisjCt%2Fuploads%2FD83D8plXT1o6hkK7Doli%2FScreenshot_1.png?alt=media&#x26;token=dea0afbb-e7b5-42ab-8fb6-df38b04b63cf" alt=""><figcaption></figcaption></figure>

C, JAVA 언어들은 컴퓨터가 미리 컴파일 해두고 실행 했을때 컴파일된 파일을 읽고

javascript, Python은 실행 될 때 실시간으로 통역해주는 언어





#### WORA(Write Onec Run Anywhere)

<figure><img src="https://3814826491-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJyHOwztPxBT3bLpisjCt%2Fuploads%2Fk7tZomt6OU1qgvAP7Txz%2FScreenshot_2.png?alt=media&#x26;token=65bf1c25-6e9a-43d2-8799-a2435c6247df" alt=""><figcaption><p>C/ C++</p></figcaption></figure>

C / C++ 등의 언어로 코드를 작성하면 각 운영체제 플랫폼에 따로 컴파일하여 플랫폼에 맞는 기계어 프로그램을 생성할 필요가 있다. (플랫폼 종속성)

<figure><img src="https://3814826491-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJyHOwztPxBT3bLpisjCt%2Fuploads%2FCYGrePfaXFfxoBlqa26D%2FScreenshot_3.png?alt=media&#x26;token=e12788e8-c860-4f6f-9ca6-1b45e426f5f9" alt=""><figcaption><p>JAVA </p></figcaption></figure>

JAVA는 자바 바이트코드로 컴파일 되고 각 운영체제 별로 JVM(Java Virturl Machine)이 존재하고 자바가상머신 위에서 동작하기 때문에 어떠한 운영체제에서도 동일하게 실행된다.

이를 WORA 라고 한다.



#### JRE JDK

<figure><img src="https://3814826491-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJyHOwztPxBT3bLpisjCt%2Fuploads%2FhIsE9PlOFF4ElLsYb0kh%2FScreenshot_4.png?alt=media&#x26;token=68e151af-9e2f-4819-988a-d2f73de045a3" alt=""><figcaption><p>Oracle은 JAVA 11 부터 JDK만 제공</p></figcaption></figure>



JAVA 버전

<figure><img src="https://3814826491-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJyHOwztPxBT3bLpisjCt%2Fuploads%2FqpbHrTLSEgyRKVOKh7NE%2FScreenshot_5.png?alt=media&#x26;token=020da14b-12d2-4835-ad71-89528f2b1714" alt=""><figcaption></figcaption></figure>

<figure><img src="https://3814826491-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJyHOwztPxBT3bLpisjCt%2Fuploads%2FTXQqzMErXjwkYNcRVChQ%2FScreenshot_6.png?alt=media&#x26;token=02e8bb02-a166-4ffd-8d55-a7ec8446e847" alt=""><figcaption><p>무료 버전인 OpenJDK와 유료버전 OracleJDK </p></figcaption></figure>



{% embed url="https://www.openlogic.com/blog/java-experts-openjdk-vs-oracle-jdk" %}
더 많은 내용이 궁금한 사람은 클릭!
{% endembed %}

<figure><img src="https://3814826491-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJyHOwztPxBT3bLpisjCt%2Fuploads%2FPanYsbsiNHb2Yon1ha8A%2FScreenshot_7.png?alt=media&#x26;token=4c969f1f-8d0d-4f90-8655-6f5a8466fff2" alt=""><figcaption></figcaption></figure>

Oracle 이외에도 IBM, Amazon 등 다양한 회사에서 JDK를 배포하고 있다.

{% embed url="https://whichjdk.com/" %}

우리는 Amazon Corretto JDK 사용예정&#x20;

