π«°π» μλ° κ°μ λ¨Έμ (Java Virtual Machine), JVM
- μλ° νλ‘κ·Έλ¨μ μ€νμν€λ λꡬ
- μλ°λ‘ μμ±ν μμ€ μ½λλ₯Ό ν΄μνμ¬ μ€ννλ λ³λμ νλ‘κ·Έλ¨
- μλ° νλ‘κ·Έλ¨κ³Ό μ΄μ체μ μ¬μ΄μ ν΅μκ°
- μλ°λ C++μ²λΌ κ°μ²΄μ§ν₯ νλ‘κ·Έλλ°μ΄ κ°λ₯νλ©΄μλ μ΄μ체μ λ‘ λΆν° λ 립λμ΄μμ
→ μλ°μ λ 립μ±μ ꡬννλ κ²μ΄ JVM
- μλ°λ JVMκ³Ό λ§€κ°νμ¬ μ΄μ체μ μ μν΅
- κ° μ΄μ체μ μ μ ν©ν λ²μ μ JVMμ΄ λ°λ‘ μ‘΄μ¬ν¨
→ μ΄μ체μ μ λ§κ² μ½λλ₯Ό λ³ννμ¬ μ€ννμ¬ λ 립μ±μ κ°μ§ μ μμ
π JVM λ©λͺ¨λ¦¬ ꡬ쑰 : Runtime Data Area
- JVMμ μλ° νλ‘κ·Έλ¨μ΄ λ‘λλμ΄ μ€νλ λ νΉμ κ°μ΄λ λ°μ΄νΈμ½λ, κ°μ²΄, λ³μ λ±μ λ°μ΄ν°κ° λ©λͺ¨λ¦¬μ μ μ₯λμ΄μΌ ν¨
→ μ΄λ€μ μ 보λ₯Ό λ΄λ λ©λͺ¨λ¦¬ μμμ΄ Runtime Data Area !!
π Stack μμ
- μ€νμ νλ‘κ·Έλ¨μ΄ λ°μ΄ν°λ₯Ό μ μ₯νλ λ°©μμΈ μλ£κ΅¬μ‘° μ€ νλ !
- λ°μ΄ν° μ μΆλ ₯ μμ μμΉ ' LIFO (Last In First Out) ' κ°μ₯ λ§μ§λ§μ λ€μ΄κ° λ°μ΄ν°κ° κ°μ₯ λ¨Όμ λμ΄
π Heap μμ
- μ€μ κ°μ²΄μ κ°μ΄ μ μ₯λλ 곡κ°
- νμ JVMμ λ¨ νλ μ‘΄μ¬ ( JVM μλλλ©΄ μλ μμ± )
- κ°μ²΄, μΈμ€ν΄μ€ λ³μ, λ°°μ΄μ΄ μ μ₯λ¨
- κ°μ²΄λ₯Ό λ€λ£¬λ€ ? Stackμ μ°Έμ‘° λ³μλ₯Ό ν΅ν΄ Heapμ κ°μ²΄λ₯Ό λ€λ£¬λ€λ μλ―Έ
- new μ°μ°μλ₯Ό μ¬μ©νμ¬ Heapμ μ μ₯λ λ°μ΄ν°λ₯Ό μ½μ΄ μ€νμ μ μ₯λ μ°Έμ‘°κ°μ λΆλ¬ 리ν΄ν¨
πGarbage Collection : GC
- κ°λΉμ§ 컬λ μ μ λ μ΄μ μ¬μ©νμ§ μμ κ°μ²΄λ₯Ό μ°Ύμ μμ νκ±°λ μ κ±°νμ¬ λ©λͺ¨λ¦¬ ν보 λ° κ΄λ¦¬
Car car = new Car();
car.setColor("red");
car = null; → κ°λΉμ§μ»¬λ μ
λ°μ
: μ무λ μ°Έμ‘°νμ§ μλ κ°μ²΄κ° λμ΄ κ°λΉμ§ 컬λ μ
μΌλ‘ μμ λ¨
βͺοΈ λμ λ°©μ
'Study > Java' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[TIL] μλ£κ΅¬μ‘° : μ€ν, ν (0) | 2022.05.27 |
---|---|
[TIL] μ¬κ·ν¨μ (0) | 2022.05.24 |
[TIL] μ€λ λ (0) | 2022.05.22 |
[TIL] νμΌ μ μΆλ ₯ (0) | 2022.05.21 |
[TIL] μ€νΈλ¦Ό (0) | 2022.05.21 |