什麼是 Java 執行時間環境?
Java 執行階段環境 (JRE) 是一種 Java 程式為了正確執行所需的軟體。 Java 是一種目前許多 Web 與行動應用程式採用的電腦語言。JRE 是一種 Java 程式和作業系統之間通訊的基礎技術。JRE 扮演了翻譯工具與輔導員的角色,提供了所有資源,因此一旦您寫入 Java 軟體,它就能在不需進一步修改的情況下,在任何作業系統上執行。
為什麼 JRE 很重要?
軟體程式需要執行時間環境,以提供對記憶體和其他系統資源 (如程式檔案和相依項) 的存取權。過去,大多數軟體直接將作業系統用作其執行環境。然而,這意味著開發人員必須為其想要在其上執行應用程式的每個作業系統撰寫不同的程式碼。Java 執行時間環境 (JRE) 技術的建立旨在解決此問題。
JRE 實際上是任何 Java 程式成功執行所需的三個 Java 平台元件之一。Java 開發套件 (JDK) 和 Java 虛擬機器 (JVM) 是另外兩個元件。
Java 開發套件
JDK 是可用於開發 Java 應用程式的軟體工具集合。您可以下載並安裝 JDK,以在您的開發環境中設定 JDK。選取與您要使用的 Java 版本相符的 JDK 軟體版本。例如,Java 標準版 (Java SE) 需要 Java SE JDK。
Java 虛擬機器
JVM 是逐行執行 Java 程式的軟體。開發人員進行 JVM 設定,以在 Java 應用程式執行時間管理程式資源。例如,您可以變更 JVM 記憶體設定,並檢查 Java 應用程式在執行時間使用了多少內部記憶體。
JRE 在 Java 程式設計語言中的作用
JRE 將您使用 JDK 建立的 Java 程式碼,與稱為程式庫的其他內建程式碼相結合。然後建立一個 JVM 執行個體或本機複本,其最終會執行 Java 程式。JVM 可用於多個作業系統,並且 JRE 可產生在所有類型的 JVM 上執行的 Java 程式碼單一複本。透過這種方式,JRE 促進了 Java 應用程式的平台獨立性。您撰寫一次即可隨時隨地執行。
JRE、JVM 與 JDK 之間的區別
JDK 是 JRE 之上的一個軟體層,其中包含編譯器、偵錯器,以及任何軟體開發環境中常見的其他工具。您在 JDK 中使用類似英文的語法編寫程式碼。JDK 對其進行編譯,並將位元組程式碼傳遞給 JRE。而 JRE 包含類別庫、支援檔案和 JVM。其使用這些軟體元件,在任何裝置上執行位元組程式碼。
JRE 如何運作?
Java 執行時間環境 (JRE) 在作業系統之上執行,可提供額外的 Java 特定資源。Java 開發套件 (JDK) 和 JRE 互動,以建立永續的執行時間環境,可在任何機器上執行 Java 程式檔案。JRE 使用三個核心元件來運作。
ClassLoader
Java 類別庫包含您可以視需呼叫的預先撰寫之程式碼集合。類別庫透過為常見且重要的任務 (如從使用者獲取輸入、向使用者顯示輸出等) 提供內建方法,來簡化 Java 開發人員的工作。所有 Java 程式均引用若干類別庫。Java ClassLoader 隨需將所有必要的類別檔案動態載入 Java 虛擬機器 (JVM) 中。
Bytecode 驗證器
JDK 有一個編譯器,可將您撰寫之類似英文的程式碼轉換為稱為 Java Bytecode 的機器語言版本。JRE 中的 Bytecode 驗證器會在將 Java 程式碼載入 JVM 之前,檢查其格式和準確性。例如,如果程式碼違反系統完整性或存取權限,則 JRE 不會載入類別檔案。
解譯器
Bytecode 成功載入後,Java 解譯器會建立 JVM 執行個體,可在基礎機器上執行 Java 程式。
JRE 有哪些元件?
除了核心元件之外,Java 執行時間環境 (JRE) 還包含其他若干有助於更有效執行 Java 程式的軟體元件。以下是一些範例:
開發工具
JRE 包含開發工具,如使用者介面工具組,您可以將其用於提高應用程式的品質。以下是一些範例:
Java 2D
Java 2D 是一種應用程式開發介面 (API),您可以用於繪製二維圖形,並以 Java 語言建立豐富的使用者介面、遊戲、動畫和特效。
Swing
Swing 是一個輕量級圖形使用者介面 (GUI),可提供靈活、使用者友好的自訂項。
Abstract Window Toolkit
Abstract Window Toolkit (AWT) 是一個 GUI,可用於建立 UI 物件,例如按鈕、視窗和捲軸。
部署解決方案
JRE 包含各項技術,可簡化向應用程式使用者發佈軟體變更的程序。這些技術還為應用程式中的更新提供進階支援。Java Web Start 和 Java 外掛程式等部署技術包含在 JRE 安裝中。這些技術簡化了應用程式的啟用,還為 JRE 的未來更新提供了進階支援。以下是一些範例:
Java Web Start
使用 Java Web Start,只需從 Web 瀏覽器點按一下,即可啟動功能齊全的應用程式。
Java 外掛程式
Java 外掛程式在常用瀏覽器和 Java 平台之間建立連接,以便您可以在桌面瀏覽器中執行您的網站小程式。
語言和公用程式庫
Java 類別檔案的集合稱為 Java 套件。JRE 包含若干支援版本控制、管理和監控的 Java 套件。以下是一些範例軟體套件:
集合架構
集合架構是一個統一的架構,包含用於改善應用程式資料儲存和處理的介面。
偏好設定 API
偏好設定 API 允許同一台機器上的多個使用者定義其自己的一組應用程式偏好設定。
日誌記錄
日誌記錄套件可產生日誌報告,用於對安全故障、效能問題和設定錯誤等事件進行疑難排解。
Java 封存
Java 封存 (JAR) 是一種獨立於平台的檔案格式,可讓您組合多個檔案,以縮減應用程式檔案大小並顯著提高下載速度。
整合程式庫
JRE 包含若干整合程式庫,可協助開發人員在其服務和應用程式之間建立無縫的資料連線。以下是一些範例程式庫:
Java IDL
Java 介面定義語言 (IDL) 以通用物件請求代理程式架構 (CORBA) 為基礎,支援分散式資料物件,即跨網絡在不同平台上互動的物件。例如,Java IDL 允許以 Java 撰寫的物件與以另一種語言 (如 C、C++ 或 COBOL) 撰寫的物件互動。
Java 資料庫連線
開發人員使用 Java 資料庫連線 (JDBC) API,以撰寫可存取遠端資料庫、試算表和檔案的應用程式。
Java 命名和目錄介面
Java 命名和目錄介面 (JNDI) 是一種目錄服務,允許用戶端建立可移植的應用程式,這些應用程式使用命名規則從外部資料庫擷取資訊。
什麼是適用於 Java 的 AWS SDK?
適用於 Java 的 AWS 軟體開發套件 (SDK) 透過提供 Java 開發人員一組一致且熟悉的程式庫,簡化了 AWS 服務的使用。它還支援更高層級的抽象以簡化開發。此軟體開發套件提供 AWS 專用的開放原始碼 Java 程式庫,並隨附程式碼範例及 Java API 參考指南。
GitHub 上適用於 Java 2.0 的 AWS SDK 程式碼範例包含 AWS 服務的 Java 程式碼範例和實際使用案例,協助您加快應用程式的開發速度。此外,適用於 Java API 的 AWS SDK 參考指南介紹了最新版適用於 Java 的 AWS SDK 的 API 操作。本參考指南還針對支援的 Web 服務協定,提供請求、回應和錯誤範例說明。
使用適用於 Java 的 AWS SDK 開發人員指南,或造訪 AWS Java 開發人員中心,即可開始使用。