---
description: JVM (Java Virtual Machine) là 1 máy ảo java - trình thông dịch của Java.
---

# Java Virtual Machine

Nó cung cấp môi trường để code java có thể được thực thi, chương trình Java khi biên dịch sẽ tạo ra các file \*.class chứa byte code , Các file \*.class này sẽ được JVM thực hiện chuyển byte code thành mã máy tương ứng với từng hệ điều hành và phần cứng khác nhau thực thi.

{% hint style="info" %}
_**JVM**_**:** không phải là compiler.

_**JIT (Just-in-time)**_ là một loại trình biên dịch (compiler) được sử dụng trong JVM (Java Virtual Machine). Khi chương trình Java được thực thi trên JVM, mã bytecode sẽ được JIT biên dịch thành mã máy ngay trước khi nó được thực thi. Nhờ vậy, thời gian thực thi của chương trình có thể nhanh hơn đáng kể. JIT biên dịch trong thời gian thực thi chương trình.
{% endhint %}

<figure><img src="https://images.viblo.asia/4081ff8d-dbbc-46fe-8d02-42b5a62cc2c0.png" alt=""><figcaption><p>Cơ chế thực hiện 1 chương trình Java</p></figcaption></figure>
