Trong bài trước, chúng ta đã tìm hiểu về cách viết chương trình Java đầu tiên Hello Java, cách biên dịch và chạy chương trình Java đầu tiên.
Ở bài hướng dẫn này, chúng ta sẽ tìm hiểu những gì xảy ra trong khi biên dịch và chạy chương trình java. Hơn nữa, chúng ta sẽ làm rõ một số câu hỏi ở chương trình Hello Java của chúng ta.
Điều gì xảy ra khi biên dịch (Compile)?
Bởi vì mã Java chạy qua máy ảo JVM nên tại thời điểm biên dịch, tệp java được biên dịch bởi Trình biên dịch Java (Java Compiler) (Mã Java không tương tác với hệ điều hành) và chuyển đổi mã java thành bytecode.
Sau đó hệ điều hành mới đọc bytecode và thực thi chương trình.
- Tìm hiểu kỹ hơn về Máy ảo Java
Điều gì xảy ra trong thời gian thực thi (Runtime)?
Trong thời gian thực thi, phải trải qua các bước sau để có thể thực thi một chương trình Java:
- Class File
- Classloader: Là hệ thống con của JVM được sử dụng để tải các tệp lớp
- Bytecode Verified: Kiểm tra các đoạn mã để tìm mã bất hợp pháp có thể vi phạm quyền truy cập vào các đối tượng.
- Interpreter: Đọc bytecode stream sau đó thực hiện các hướng dẫn.
- Runtime
- Hardware
Trong bài hướng dẫn trước có một số điểm mình hướng dẫn bạn làm nhưng chắc chắn bạn có một số thắc mắc, ví dụ:
Có thể lưu một tệp nguồn java bằng tên khác ngoài tên lớp không?
Câu trả lời là CÓ, nếu class đó không được public. Nó được giải thích trong hình dưới đây
- Khi biên dịch: javac Hard.java
- Khi thực thi: java Simple
Có thể có nhiều Class trong một file mã nguồn Java không?
Có giống như hình minh họa dưới đây:
Lời kết
Như vậy là qua bài hướng dẫn này bạn đã hiểu hơn về cách hoạt động của chương trình Java và một số thắc mắc về tên file java, số lượng class trong 1 file java.
Hi vọng bài viết giúp bạn có thêm chút kiến thức để đỡ bỡ ngỡ khi bước tiếp vào các bài hướng dẫn tiếp theo.