Computer >> Máy Tính >  >> Lập trình >> Java

Sự khác biệt giữa JDK, JRE và JVM.

Cả ba JDK, JRE và JVM đều phụ thuộc lẫn nhau và không có điểm chung nên việc nêu sự khác biệt của chúng ở dạng bảng sẽ không hiệu quả, tuy nhiên chúng ta sẽ thảo luận về những điều này trong các đoạn sau.

JVM

JVM là tên viết tắt của máy ảo Java, về cơ bản là đặc điểm kỹ thuật cung cấp môi trường thời gian chạy trong đó mã byte Java có thể được thực thi, tức là nó là một thứ gì đó trừu tượng và việc triển khai nó là độc lập để lựa chọn thuật toán và đã được cung cấp bởi Sun và các công ty khác . Nó là JVM chịu trách nhiệm chuyển đổi mã Byte sang mã máy cụ thể. Nó cũng có thể chạy các chương trình được viết bằng các ngôn ngữ khác và được biên dịch sang mã bytecode của Java. JVM thực hiện các tác vụ được đề cập:Tải mã, Xác minh mã, Thực thi mã, Cung cấp môi trường thời gian chạy.

JRE

JRE là môi trường thời gian chạy Java là việc triển khai JVM, tức là các đặc tả được định nghĩa trong JVM được thực thi và tạo ra môi trường tương ứng để thực thi mã .JRE chủ yếu bao gồm các tệp nhị phân java và các lớp khác để thực thi chương trình giống như JVM mà nó tồn tại về mặt vật lý. Cùng với mã nhị phân Java, JRE cũng bao gồm các công nghệ triển khai khác nhau, giao diện người dùng để tương tác với mã được thực thi, một số thư viện cơ sở cho các chức năng và ngôn ngữ khác nhau và thư viện dựa trên sử dụng.

JDK

JDK là chữ viết tắt của Java Development Kit bao gồm tất cả các công cụ, tệp thực thi và mã nhị phân cần thiết để biên dịch, gỡ lỗi và thực thi Chương trình Java .JDK phụ thuộc vào nền tảng, tức là có các trình cài đặt riêng cho hệ thống Windows, Mac và Unix. JDK bao gồm cả JVM và JRE và hoàn toàn chịu trách nhiệm về việc thực thi mã. Đây là phiên bản của JDK đại diện cho phiên bản của Java.

Sau đây là những điểm khác biệt quan trọng giữa JDK, JRE và JVM

Phím Mặt khác,
Sr. Không.

JDK
JRE
JVM
1
Định nghĩa
JDK (Java Development Kit) là một bộ phát triển phần mềm để phát triển các ứng dụng bằng Java. Ngoài JRE, JDK cũng chứa một số công cụ phát triển (trình biên dịch, JavaDoc, Java Debugger, v.v.).
JRE (Java Runtime Environment) là việc triển khai JVM và được định nghĩa là một gói phần mềm cung cấp các thư viện lớp Java, cùng với Máy ảo Java (JVM) và các thành phần khác để chạy các ứng dụng được viết bằng lập trình Java.
JVM (Máy ảo Java) là một máy trừu tượng phụ thuộc vào nền tảng và có ba khái niệm là một đặc tả, một tài liệu mô tả yêu cầu triển khai, thực thi JVM, một chương trình máy tính đáp ứng các yêu cầu JVM và ví dụ, một triển khai thực thi mã byte Java cung cấp một môi trường thời gian chạy để thực thi mã byte Java.
2
Chức năng chính
JDK chủ yếu được sử dụng để thực thi mã và có chức năng chính là phát triển.
Mặt khác, JRE chịu trách nhiệm chính trong việc tạo môi trường để thực thi mã.
JVM chỉ định tất cả các triển khai và chịu trách nhiệm cung cấp các triển khai này cho JRE.
3
Độc lập nền tảng
JDK phụ thuộc vào nền tảng, tức là đối với các nền tảng khác nhau, yêu cầu JDK khác nhau.
Giống như JDK JRE cũng phụ thuộc vào nền tảng.
JVM độc lập với nền tảng.
4
Công cụ
Vì JDK chịu trách nhiệm phát triển chính nên nó chứa các công cụ để phát triển, gỡ lỗi và giám sát ứng dụng java.
Mặt khác, JRE không chứa các công cụ như trình biên dịch hoặc trình gỡ lỗi, v.v. Thay vào đó, nó chứa các thư viện lớp và các tệp hỗ trợ khác mà JVM yêu cầu để chạy chương trình.
JVM không bao gồm các công cụ phát triển phần mềm.
5
Thực hiện
JDK =Java Runtime Environment (JRE) + Các công cụ phát triển
JRE =Máy ảo Java (JVM) + Thư viện để chạy ứng dụng
JVM =Chỉ môi trường Runtime để thực thi mã byte Java.