12/08/2018, 17:50

Tìm hiểu về Java platform independent

Chào mọi người, mình có bỏ chút ít thời gian để tìm hiểu về Java và đã hiểu thêm được một ít kiến thức về Java platform independent. Việc đầu tiên của chúng ta khi bắt đầu học một ngôn ngữ bắt kì luôn là in ra câu "Hello world!". Và sau khi in ra được câu "Hello world!", chắc hẳn chúng ta luôn có ...

Chào mọi người, mình có bỏ chút ít thời gian để tìm hiểu về Java và đã hiểu thêm được một ít kiến thức về Java platform independent.

Việc đầu tiên của chúng ta khi bắt đầu học một ngôn ngữ bắt kì luôn là in ra câu "Hello world!". Và sau khi in ra được câu "Hello world!", chắc hẳn chúng ta luôn có cảm giác thỏa mãn đúng không nào.

Nhưng rất nhiều người trong chúng ta quên rằng, phần kết quả hiển thị trên màn hình cũng chỉ như là phần nổi của một tảng băng chìm mà thôi. Chúng ta cũng nên biết thêm chút ít về "phần chìm" của tảng băng, dù không cần chuyên sâu nhưng cũng đủ để trả lời thêm một vài câu hỏi hay tỏ ra nguy hiểm khi đi phỏng vấn phải không nào.

Trước tiên, câu hỏi đưa mình đến với việc tìm hiểu này là: "Tại sao Java source code có thể chạy được trên tất cả các hệ điều hành?".

Và sau khi tìm hiểu trên Internet, mình đã biết được phần nào đó lý do, đó chính là nhờ có Java virtual machine. Vậy Java virtual machine là gì? Và vì sao nó lại giúp cho Java có thể chạy trên tất cả các hệ điều hành?

Java virtual machine (JVM) là một phần mềm dùng để thực thi các chương trình như một cổ máy thực sự. Các chương trình Java sử dụng chúng một cách trừu tượng và không trực tiếp truy cập vào hệ điều hành. Điều quan trọng ở đây, là JVM phụ thuộc vào mỗi hệ điều hành khác nhau. Vì vậy bạn cần phải cài đặt bản JVM tương ứng với hệ điều hành mà mình đang chạy.

Và JVM không thực thi trực tiếp các chương trình, mà sẽ thông qua một quá trình khác. Chương trình Java sẽ được biên dịch thành các bytecode bởi Java compiler. Sau đó, JVM mới phiên dịch bytecode để thực thi chương trình. Và đây là quy trình cụ thể hơn về việc thực thi một chương trình Java.

.

Một chương trình, hay đoạn code dù cho là được viết bằng ngôn ngữ lập trình gì, thì ngôn ngữ này cũng chỉ đang ở mức độ mà mỗi con người có thể đọc và hiểu (Đôi khi điều này cũng không đúng             </div>
            
            <div class=

0