์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- ์ฝ๋ฉ
- ์๋ฐ
- ํฐ์คํ ๋ฆฌ์ฑ๋ฆฐ์ง
- ๋ง์ผ๋ด๊ฐ์ธ์์๋ค์์ฐ๋ค๋ฉด
- ๋ฐ์ดํฐ๋ฒ ์ด์ค
- K๋ฐฐํฐ๋ฆฌ
- ComputerScience
- ๊น๋ฏธ๊ฒฝ์๋งํ์์
- ๊ฐ๋ฐ
- ์นํผ๋ธ๋ฆฌ์ฑ
- database
- K๋ฐฐํฐ๋ฆฌ๋ ๋ณผ๋ฃจ์
- ์ํ
- ์นํ์ด์ง๋ง๋ค๊ธฐ
- Python
- Java
- ์ปดํจํฐ๊ณผํ
- html
- ๋ฐ์ํ
- JavaScript
- ์ฑ
- ํ๋ก๊ทธ๋๋ฐ
- ์ค๋ธ์
- css
- ๋ผํ๋ผ์ค์๋ง๋
- ๋ฆฌ์กํธ
- ๋ ์
- ์๋ฐ์คํฌ๋ฆฝํธ
- ํ์ด์ฌ
- ์ค๋ผํด
- Today
- Total
JiYoung Dev ๐ฅ
๊ธฐ์ ๋ฉด์ ์ค๋น 1. Java ์ธ์ด์ ํน์ง (+JVM๊ณผ ์๋ฐ์ ์ปดํ์ผ ๋ฐฉ์, JRE vs JDK) ๋ณธ๋ฌธ
๊ธฐ์ ๋ฉด์ ์ค๋น 1. Java ์ธ์ด์ ํน์ง (+JVM๊ณผ ์๋ฐ์ ์ปดํ์ผ ๋ฐฉ์, JRE vs JDK)
Shinjio 2023. 10. 31. 19:54Java๋?
- ์ฌ ๋ง์ดํฌ๋ก์์คํ ์ฆ(Sun Microsystems, Inc.)์์ ๊ฐ๋ฐํ์ฌ 1996๋ 1์์ ๊ณต์์ ์ผ๋ก ๋ฐํํ ๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋๋ฐ์ธ์ด
- ์ด๊ธฐ์ ์ ์์ค ๊ณ ์ฌ๋ง(James Gosling)์ด๋ ์์ง๋์ด๋ฅผ ์ค์ฌ์ผ๋ก ๊ฐ์ ์ ํ์ ์ฌ์ฉํ ์ํํธ์จ์ด๋ฅผ ๊ฐ๋ฐํ๋ค ํ๋ซํผ์ ๋ ๋ฆฝ์ ์ด๋ฉด์๋ ์ ์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ฌ์ฉํ๋ ์๋ก์ด ์ธ์ด์ ํ์์ฑ์ ๋๋ผ๊ณ ๊ฐ๋ฐํ๊ฒ ๋ ์ธ์ด
Java ์ธ์ด์ ํน์ง
1. ์๋ฐ๊ฐ์๋จธ์ (JVM) : ์ด์์ฒด์ ์ ๋ ๋ฆฝ์ ์ด๋ค.
์๋ฐ ์์ฉํ๋ก๊ทธ๋จ์ ์ด์์ฒด์ ๋ ํ๋์จ์ด๊ฐ ์๋ JVMํ๊ณ ๋ง ํต์ ํ๊ณ , JVM์ด ์๋ฐ ์์ฉํ๋ก๊ทธ๋จ์ผ๋ก๋ถํฐ ์ ๋ฌ๋ฐ์ ๋ช ๋ น์ ํด๋น ์ด์์ฒด์ ๊ฐ ์ดํดํ ์ ์๋๋ก ๋ณํํ์ฌ ์ ๋ฌํ๋ค. ์๋ฐ๋ก ์์ฑ๋ ํ๋ก๊ทธ๋จ์ ์ด์์ฒด์ ์๋ ๋ ๋ฆฝ์ ์ด์ง๋ง JVM์ ์ด์์ฒด์ ์ ์ข ์์ ์ด๋ฏ๋ก ์ฌ๋ฌ ์ด์์ฒด์ ์ ์ค์นํ ์ ์๋ ์๋ก ๋ค๋ฅธ ๋ฒ์ ์ JVM์ ์ ๊ณตํ๊ณ ์๋ค.
2. ๊ฐ์ฒด์งํฅ์ธ์ด์ด๋ค.
๋ํ์ ์ธ ๊ฐ์ฒด์งํฅ์ธ์ด
3. Garbage Collection : ์๋ ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ
์๋ฐ๋ก ์์ฑ๋ ํ๋ก๊ทธ๋จ์ด ์คํ๋๋ฉด, ๊ฐ๋น์ง์ปฌ๋ ํฐ(Garbage Collector)๊ฐ ์๋์ ์ผ๋ก ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๊ด๋ฆฌ
4. ๋ฉํฐ์ฐ๋ ๋ ์ง์
ํ๋์ ํ๋ก๊ทธ๋จ ๋จ์๊ฐ ๋์ผํ ์ฐ๋ ๋๋ฅผ ๋์์ ์ํํ ์ ์๋ค.
์ด์์ฒด์ ๋ง๋ค ๋ฉํฐ ์ฐ๋ ๋๋ฅผ ์ด์ฉํ๋ API๊ฐ ๋ค๋ฅด๋ ์๋ฐ์ ๊ฒฝ์ฐ ์๋ฐ API๋ฅผ ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์ ์ฝ๊ฒ ๊ตฌํํ ์ ์๋ค.
5. ๋์ ๋ก๋ฉ(Dynamic Loading) ์ง์
๋ณดํต ์๋ฐ๋ก ์์ฑ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ฌ๋ฌ ๊ฐ์ ํด๋์ค๋ก ๊ตฌ์ฑ๋์ด ์์. ์๋ฐ๋ ๋์ ๋ก๋ฉ์ ์ง์ํ๊ธฐ ๋๋ฌธ์ ์คํ ์ ๋ชจ๋ ํด๋์ค๊ฐ ๋ก๋ฉ๋์ง ์๊ณ ํ์ํ ์์ ์ ํด๋์ค๋ฅผ ๋ก๋ฉํ์ฌ ์ฌ์ฉํ ์ ์๋ค.
์์ ์ง๋ฌธ 1. ์๋ฐ ์ธ์ด์ ํน์ง
์๋ฐ ์ธ์ด๋ JVM ์์์ ๋์ํ๊ธฐ ๋๋ฌธ์ ์ด์์ฒด์ ์ ๋
๋ฆฝ์ ์
๋๋ค.
๋ํ ๊ฐ์ฒด์งํฅ์ธ์ด์ด๋ฉฐ, ๊ฐ๋น์ง ์ปฌ๋ ํฐ๋ฅผ ํตํด ์๋์ผ๋ก ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๊ด๋ฆฌํฉ๋๋ค.
๋ฉํฐ์ฐ๋ ๋์ ๋์ ๋ก๋ฉ์ ์ง์ํฉ๋๋ค
JVM(์๋ฐ๊ฐ์๋จธ์ , Java Virtual Machine)
Java๋ก ๊ฐ๋ฐํ ํ๋ก๊ทธ๋จ(*.java)์ ์ปดํ์ผํ์ฌ ๋ง๋ค์ด์ง๋ ๋ฐ์ดํธ์ฝ๋(*.class)๋ฅผ ์คํ์ํค๊ธฐ ์ํ ๊ฐ์ ๋จธ์
์ฌ๊ธฐ์ ๋ฐ์ดํธ์ฝ๋(Java bytecode)๋ JVM์ด ์ดํดํ ์ ์๋ ์ธ์ด๋ก ๋ณํ๋ ์๋ฐ ์์ค์ฝ๋๋ฅผ ์๋ฏธํ๋ค. ์๋ฐ ์ปดํ์ผ๋ฌ์ ์ํด ๋ณํ๋ ์ฝ๋์ ๋ช ๋ น์ด ํฌ๊ธฐ๊ฐ 1๋ฐ์ดํธ๋ผ์ ์๋ฐ ๋ฐ์ดํธ์ฝ๋๋ผ ๋ถ๋ฆฌ๊ณ ์๋ค.
Java ์์ค ์ฝ๋๋ javac ์ปดํ์ผ๋ฌ๋ฅผ ๊ฑฐ์ณ ๋ฐ์ดํธ ์ฝ๋๋ก ๋ณํ๋๋ฉฐ, ์ด ๋ฐ์ดํธ์ฝ๋๋ JRE์ ๋ค์ด์๋ java classloader์ ์ํด JVM์ผ๋ก ์ ์ฌ๋๊ณ JVM์ ์ ์ฌ๋ ๋ฐ์ดํธ์ฝ๋๋ฅผ JIT ์ปดํ์ผ ๋ฐฉ์์ผ๋ก ์คํํ๋ ์ปดํจํฐ์ OS ๋ฐ CPU ์ํคํ ์ฒ์ฉ ๊ธฐ๊ณ์ด(0๊ณผ 1๋ก ๊ตฌ์ฑ๋ ๋ฐ์ด๋๋ฆฌ์ฝ๋)๋ก ๋ฒ์ญ๋์ด ์ํํ๋ค.
JVM ๊ตฌ์กฐ
- ํด๋์ค ๋ก๋(Class Loader)
- ์คํ ์์ง(Execution Engine)
- ์ธํฐํ๋ฆฌํฐ(Interpreter) : ๋ฐ์ดํธ์ฝ๋ ๋ช ๋ น์ด๋ฅผ ํ๋์ฉ ์ฝ์ด์ ํด์ํ๊ณ ๋ฐ๋ก ์คํ
- JIT ์ปดํ์ผ๋ฌ(Just-in-Time)
- ๊ฐ๋น์ง ์ฝ๋ ํฐ(Garbage collector)
- ๋ฐํ์ ๋ฐ์ดํฐ ์์ญ(Runtime Data Area)
- ๋ฉ์๋ ์์ญ
- ํ ์์ญ
- PC Register
- ์คํ ์์ญ
- ๋ค์ดํฐ๋ธ ๋ฉ์๋
- ๋ค์ดํฐ๋ธ ๋ฉ์๋ ์ธํฐํ์ด์ค(Native Method Interface)
- ๋ค์ดํฐ๋ธ ๋ฉ์๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ(Native Method Library)
ํด๋์ค ๋ก๋(Class Loader)
- JVM ๋ด๋ก ํด๋์ค ํ์ผ(*.class)์ ๋์ ์ผ๋ก ๋ก๋ํ๊ณ , ๋งํฌ๋ฅผ ํตํด ๋ฐฐ์นํ๋ ์์ ์ ์ํํ๋ ๋ชจ๋๋ก ๋ฐ์ดํธ ์ฝ๋(*.class)๋ฅผ ์ฎ์ด์ JVM์ ๋ฉ๋ชจ๋ฆฌ ์์ญ์ธ Runtime Data Areas์ ๋ฐฐ์นํด๋์ค๋ฅผ ๋ฉ๋ชจ๋ฆฌ์ ์ฌ๋ฆฌ๋ ๋ก๋ฉ ๊ธฐ๋ฅ์ ํ ๋ฒ์ ๋ฉ๋ชจ๋ฆฌ์ ์ฌ๋ฆฌ์ง ์๊ณ , ์ ํ๋ฆฌ์ผ์ด์ ์์ ํ์ํ ๊ฒฝ์ฐ ๋์ ์ผ๋ก ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฌํจ
์คํ ์์ง(Execution Engine)
- ํด๋์ค ๋ก๋๋ฅผ ํตํด ๋ฐํ์ ๋ฐ์ดํฐ ์์ญ์ ๋ฐฐ์น๋ ๋ฐ์ดํธ ์ฝ๋๋ฅผ ๋ช ๋ น์ด ๋จ์๋ก ์ฝ์ด์ ์คํ
- ์ธํฐํ๋ฆฌํฐ, JIT ์ปดํ์ผ๋ฌ ๋ฐฉ์์ด ์์
์ธํฐํ๋ฆฌํฐ(Interpreter)
- ๋ฐ์ดํธ์ฝ๋ ๋ช ๋ น์ด๋ฅผ ํ๋์ฉ ์ฝ์ด์ ํด์ํ๊ณ ๋ฐ๋ก ์คํ
JIT ์ปดํ์ผ๋ฌ(Just-in-Time)
- Interpreter์ ๋จ์ ์ ๋ณด์ํ๊ธฐ ์ํด ๋์ ๋ ๋ฐฉ์์ผ๋ก ๋ฐ๋ณต๋๋ ์ฝ๋๋ฅผ ๋ฐ๊ฒฌํ์ฌ ๋ฐ์ดํธ์ฝ๋ ์ ์ฒด๋ฅผ ์ปดํ์ผํ์ฌ Native Code(C์ธ์ด, C++, ์ด์ ๋ธ๋ฆฌ์ด๋ก ๊ตฌ์ฑ๋ ์ฝ๋)๋ก ๋ณ๊ฒฝํ๊ณ ํด๋น ๋ฉ์๋๋ฅผ ๋ ์ด์ ์ธํฐํ๋ฆฌํ ํ์ง ์๊ณ ์บ์ฑํด ๋์๋ค๊ฐ ๋ค์ดํฐ๋ธ ์ฝ๋๋ก ์ง์ ์คํํ๋ ๋ฐฉ์. ์์ ๋ฐฉ์๋ ์ ์ฒด๋ฅผ ์ปดํ์ผ ํ๋๋ฐ ๋น์ฉ์ด ์๋ชจ ๋๋ฏ๋ก JVM์ ๋ชจ๋ ์ฝ๋๋ฅผ JIT ์ปดํ์ผ๋ฌ ๋ฐฉ์์ผ๋ก ์คํํ์ง ์๊ณ ์ธํฐํ๋ฆฌํฐ ๋ฐฉ์์ ์ฌ์ฉํ๋ค๊ฐ ์ผ์ ์์ค์ด ๋์ด๊ฐ๋ฉด JIT ์ปดํ์ผ์ ๋ฐฉ์์ผ๋ก ์คํ
๊ฐ๋น์ง ์ฝ๋ ํฐ(Garbage Collector)
- Heap ๋ฉ๋ชจ๋ฆฌ ์์ญ์์ ๋๋ ์ฌ์ฉํ์ง ์๋ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์๋์ผ๋ก ํ์
๋ฐํ์ ๋ฐ์ดํฐ ์์ญ(Runtime Data Area)
- JVM์ ๋ฉ๋ชจ๋ฆฌ ์์ญ์ผ๋ก ์๋ฐ ์ ํ๋ฆฌ์ผ์ด์ ์ ์คํํ ๋ ์ฌ์ฉ๋๋ ๋ฐ์ดํฐ๋ค์ ์ ์ฌํ๋ ์์ญ
์์ ์ง๋ฌธ 2. JVM์ด๋? ์๋ฐ์ ์คํ ๋ฐฉ์๊ณผ ํจ๊ป ์ค๋ช ํด์ฃผ์ธ์.
JVM์ด๋ Java Virtual Machine์ ์ฝ์๋ก, ์๋ฐ ๋ฐ์ดํธ์ฝ๋๋ฅผ CPU๊ฐ ์ฝ์ ์ ์๋ ๋ฐ์ด๋๋ฆฌ ์ฝ๋๋ฅด ๋ฒ์ญํ์ฌ ์คํ์์ผ์ฃผ๋ ๊ฐ์ ๋จธ์ ์ ๋๋ค. ์๋ฐ ์ธ์ด๋ก ์ฐ์ธ java ํ์ผ์ javac ์ปดํ์ผ๋ฌ๋ฅผ ํตํด ์๋ฐ ๋ฐ์ดํธ์ฝ๋๋ก ๋ณํ๋ฉ๋๋ค. ๋ณํ๋ ๋ฐ์ดํธ์ฝ๋๋ฅผ JVM์ ํด๋์ค ๋ก๋๊ฐ ๋ฐํ์ ๋ฐ์ดํฐ ์์ญ์ ๋ฐฐ์นํ๊ณ , ์คํ ์์ง์ ํตํด ์คํํฉ๋๋ค. ์คํ ์์ง์ ์๋ ์ธํฐํ๋ฆฌํฐ์ JIT ์ปดํ์ผ๋ฌ๋ฅผ ํตํด ์ด ์๋ฐ ๋ฐ์ดํธ์ฝ๋๋ฅผ OSํ๊ฒฝ์ด ์ฝ์ ์ ์๋ ๋ฐ์ด๋๋ฆฌ ์ฝ๋๋ก ๋ณํํ์ฌ ๊ฐ๊ฐ์ ์ด์์ฒด์ ์์ ํ๋ก๊ทธ๋จ์ ์คํํ ์ ์๋๋ก ํฉ๋๋ค.
์์ ์ง๋ฌธ 3. ์๋ฐ์ ์ปดํ์ผ ๊ณผ์
์ปดํ์ผ(Compile)์ด๋?
์ธ๊ฐ์ด ์ดํดํ ์ ์๋ ์ธ์ด๋ก ์์ฑ๋ ์์ค ์ฝ๋(๊ณ ์์ค ์ธ์ด: C, C++, Java ๋ฑ)๋ฅผ CPU๊ฐ ์ดํดํ ์ ์๋ ์ธ์ด(์ ์์ค ์ธ์ด: ๊ธฐ๊ณ์ด)๋ก ๋ฒ์ญ(๋ณํ)ํ๋ ์์
์๋ฐ๋ javac.exe ์ปดํ์ผ๋ฌ๋ฅผ ํตํด ์๋ฐ ๋ฐ์ดํธ ์ฝ๋๋ก ๋ณํฅ๋ฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ด ๋ฐ์ดํธ์ฝ๋๋ JVM์ ํด๋์ค๋ก๋๋ก ์ ๋ฌ๋ฉ๋๋ค. ํด๋์ค ๋ก๋๋ ๋์ ๋ก๋ฉ์ ํตํด ํ์ํ ํด๋์ค๋ค์ ๋กํ ๋ฐ ๋งํ์ฌ ๋ฐํ์ ๋ฐ์ดํฐ ์์ญ์ ์ฌ๋ฆฝ๋๋ค. JVM์ ์คํ ์์ง์ ์ธํฐํ๋ฆฌํฐ์ JIT ์ปดํ์ผ๋ฌ๋ฅผ ํตํด CPU๊ฐ ์ดํดํ ์ ์๋ ๊ธฐ๊ณ์ด(๋ฐ์ด๋๋ฆฌ ์ฝ๋)๋ก ๋ณํํ์ฌ ์ด์์ฒด์ ์ํด์ ํ๋ก๊ทธ๋จ์ด ์คํ๋ ์ ์๋๋ก ํฉ๋๋ค.
JDK์ JRE
JDK(Java Development Kit) vs JRE(Java Runtime Enviroment)
JDK๋ผ ์๋ฐ ํ๋ก๊ทธ๋จ์ ์คํํ๊ณ ์ปดํ์ผํ๊ณ ๊ฐ๋ฐํ๋๋ฐ ์ฌ์ฉํ๋ ๋๊ตฌ๋ก JRE์ JVM์ ํฌํจํ๋ค.
๋ง๋ฉด, JRE๋ ์๋ฐ ํ๋ก๊ทธ๋จ์ ์คํํ ์ ์๊ฒ ํ๋ ๋๊ตฌ๋ก JVM์ ํฌํจํ๊ณ ์๋ค.
- JRE๋ ์๋ฐ ์คํ ํ๊ฒฝ(Java Runtime Enviroment)์ ์ฝ์๋ก ์๋ฐ๋ก ๋ง๋ค์ด์ง ํ๋ก๊ทธ๋จ์ ์คํ์ํค๋๋ฐ ํ์ํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ค๊ณผ ๊ฐ์ข API, ๊ทธ๋ฆฌ๊ณ ์๋ฐ ๊ฐ์ ๋จธ์ (JVM)์ ํฌํจํ๊ณ ์๋ค. ์ฝ๊ฒ ์๋ฐ๋ก ์ฐ๊ธฐ(๊ฐ๋ฐ)๋ ์๋๊ณ ์ฝ๊ธฐ(์คํ)๋ง ๊ฐ๋ฅํ๋๋ก ํ๋ ๋๊ตฌ๋ผ๊ณ ์๊ฐํ ์ ์์
- JDK๋ ์๋ฐ ๊ฐ๋ฐ ํค๋(Java Development Kit)์ ์ฝ์๋ก ๊ฐ๋ฐ์ ํ์ํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ค๊ณผ javac, javadoc ๋ฑ ๊ฐ๋ฐ ๋๊ตฌ์ ํจ๊ป JRE๋ฅผ ํฌํจํ๊ณ ์์
์ฌ์ฉ์ ๋๋ ํฐ๋ฆฌ ๊ตฌ์กฐ
- bin : ์๋ฐ ๊ฐ๋ฐ๊ณผ ์คํ์ ํ์ํ ๋๊ตฌ์ ์ ํธ๋ฆฌํฐ ๋ช ๋ น
- conf : ์ฌ๋ฌ ์ข ๋ฅ์ ํจ์น ํ์ผ
- include : ๋ค์ดํฐ๋ธ ์ฝ๋ ํ๋ก๊ทธ๋๋ฐ์ ํ์ํ C์ธ์ด ํค๋ ํ์ผ
- jmods : ์ปดํ์ผ๋ ๋ชจ๋ ํ์ผ
- legal : ๊ฐ ๋ชจ๋์ ๋ํ ์ ์๊ถ๊ณผ ๋ผ์ด์ ์ค
- lib : ์คํ์ ํ์ํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ํด๋์ค
bin ๋๋ ํฐ๋ฆฌ์ ๋ค์ด์๋ ์ฃผ์ ๊ฐ๋ฐ ์ํํธ์จ์ด
- javac : ์๋ฐ ์ปดํ์ผ๋ฌ, ์๋ฐ ์์ค๋ฅผ ๋ฐ์ดํธ์ฝ๋๋ก ๋ณํ
- java : ์๋ฐ ํ๋ก๊ทธ๋จ ์คํ๊ธฐ, JVM์ ์๋ํ์ฌ ์๋ฐ ํ๋ก๊ทธ๋จ ์คํ
- javadoc : ์๋ฐ ์์ค๋ก๋ถํฐ HTML ํ์์ API ๋ํ๋จผํธ ์์ฑ
- jar : ์๋ฐ ํด๋์ค ํ์ผ์ ์์ถํ ์๋ฐ ์์นด์ด๋ธ ํ์ผ ์์ฑ, ๊ด๋ฆฌ
- jmod : ์๋ฐ์ ๋ชจ๋ ํ์ผ(.jmd)์ ๋ง๋ค๊ฑฐ๋ ๋ชจ๋ ํ์ผ์ ๋ด์ฉ ์ถ๋ ฅ
- jlink : ์์ฉํ๋ก๊ทธ๋จ์ ๋ง์ถ ๋ง์ถคํ JRE ์์ฑ
- jdb : ์๋ฐ ์์ฉํ๋ก๊ทธ๋จ์ ์คํ ์ค ์ค๋ฅ๋ฅผ ์ฐพ๋๋ฐ ์ฌ์ฉํ๋ ๋๋ฒ๊ฑฐ
- javap : ํด๋์ค ํ์ผ์ ๋ฐ์ดํธ์ฝ๋๋ฅผ ์์ค์ ํจ๊ป ๋ณด์ฌ์ฃผ๋ ๋์ด์ ๋ธ๋ฌ
์์ ์ง๋ฌธ 4. JDK์ JRE์ ์ฐจ์ด์
JRE๋ ์๋ฐ ํ๋ก๊ทธ๋จ ์คํ ํ๊ฒฝ์ ์ฝ์๋ก ์๋ฐ๋ฅผ ์คํ์ํค๋๋ฐ ํ์ํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ API ๊ทธ๋ฆฌ๊ณ JVM์ ํฌํจํ๊ณ ์์ต๋๋ค. JDK๋ ์๋ฐ๋ฅผ ๊ฐ๋ฐํ๋ ํ์ํ ๋๊ตฌ ๋ชจ์์ผ๋ก ๊ฐ๋ฐ์ ํ์๋กํ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ javac, javadoc ๋ฑ์ ๊ฐ๋ฐ ๋๊ตฌ์ ํจ๊ป JRE๊น์ง ํฌํจํ๋ ๊ฐ๋ ์ ๋๋ค.
์ฐธ๊ณ ์๋ฃ
๋ช ํ Java Programming (ํฉ๊ธฐํ, ๊นํจ์)
Java์ ์ ์ (๋จ๊ถ์ฑ)
'Study > Java' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๊ธฐ์ ๋ฉด์ ์ค๋น 3. ๋ฉํฐ ์ค๋ ๋ (+ ํ๋ก์ธ์ค์ ์ค๋ ๋) (0) | 2023.11.07 |
---|---|
Java BufferedReader์ BufferedWriter ์ฌ์ฉ๋ฒ๊ณผ ๊ธฐ๋ณธ์๋ฆฌ(I/O) (0) | 2023.11.06 |
๊ธฐ์ ๋ฉด์ ์ค๋น 2. ๊ฐ๋น์ง ์ปฌ๋ ์ (Garbage Collection) (1) | 2023.11.01 |
์ ์ํ(byte, short, int, long) ํ์ ์ ํฌ๊ธฐ (0) | 2023.10.27 |
์๋ฐ ํ๋ก๊ทธ๋จ ์์ฑํ๊ธฐ : Java class์ main() ๋ฉ์๋ (0) | 2023.10.27 |