Trước tiên, chúng ta hãy có một ý tưởng rõ ràng về các thuật ngữ sau
Javac
là Trình biên dịch Java - Biên dịch mã Java của bạn thành Bytecode
JVM
là Máy ảo Java - Chạy / Phiên dịch / dịch Bytecode thành Mã máy gốc
JIT
is Just In Time Compiler - Biên dịch chuỗi lệnh bytecode đã cho thành mã máy trong thời gian chạy trước khi thực thi nguyên bản. Mục đích chính của nó là tối ưu hóa hiệu suất.
Vậy bây giờ, Hãy cùng tìm câu trả lời cho câu hỏi của bạn ..
1) JVM: is it a compiler or an interpreter?
- Trả lời: Thông dịch viên
2) what about JIT compiler that exist inside the JVM?
- Trả lời: Nếu bạn đọc xong câu trả lời này, bạn có thể biết nó ngay bây giờ
3) what exactly is the JVM?
- Trả lời:
- JVM là một nền tảng ảo nằm trên RAM của bạn
- Thành phần của nó, Bộ tải lớp tải
.class
tệp vào RAM
- Thành phần Trình xác minh mã Byte trong JVM kiểm tra xem có bất kỳ vi phạm hạn chế truy cập nào trong mã của bạn hay không. (Đây là một trong những lý do chính khiến java được bảo mật)
- Tiếp theo, thành phần Execution Engine chuyển đổi Bytecode thành mã máy thực thi
Hy vọng điều này đã giúp bạn ..