Cách hoạt động của Chương trình Java: Hello Java

0
3110
Quá trình biên dịch file Java

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ịchchạ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.

Quá trình biên dịch file Java

Quá trình biên dịch file Java

Sau đó hệ điều hành mới đọc bytecode và thực thi chương trình.

Đ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:

Quá trình thực thi Java (Java Runtime)
Quá trình thực thi Java (Java Runtime)
  • 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

Có thể đặt tên File java khác tên Class không
Có thể đặt tên File java khác tên Class không?
  • 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:

Có thể có nhiều Class trong mã nguồn Java không?

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.