1-3 Java SE 架構

儘管許多 Java 程式設計者最後會專門研究特定目標產品的開發應用程式,但所有的程式設計者通常是以桌上型電腦製作應用程式或 Applet 做為開端。這也就是說,當學習 Java 程式語言時,Java 標準版本(Java SE)是最多程式設計者所選用的產品種類。

來看一下 Java SE 的基本架構:

圖1-3、Java SE 基本架構

即使是 Java SE,當中所包括的架構也是相當龐大的,對於初學者來說 , 只要先了解到 Java SE 可以分作四個主要的部份: Java 語言、JDK、JRE 與 JVM。

• Java 語言

要使用 Java 技術來開發應用程式,首先就要學習如何使用 Java 程式語言,然而什麼叫作程式語言(Programming language)

舉個例子來說,您使用英文與懂英文的外國人溝通,使用德文與懂德文的外國人溝通,如果您要與電腦溝通,就要用電腦可以了解的語言與電腦溝通。Java 程式語言就是用來與電腦溝通的語言,您使用這個語言命令電腦來為您作所指定的動作,程式語言的目的就是在此。

• JDK

Java 程式語言是高階的程式語言,所謂高階的程式語言, 指的是其語法與語義是人類比較容易的理解方式,然而電腦只懂得低階的機器語言,也就是 0 與 1 這樣的語言, Java 在 JDK 中提供有工具程式,幫您將高階語言轉換為低階語言。

JDK 的全名是 Java SE Development Kits,中文名為 Java 標準版開發工具箱,除了提供編譯器(Compiler)轉換高階語言為較低階的語言之外,還提供有其它相關的開發、執行、測試等工具。

簡單的說,作為一名 Java 開發人員,在撰寫好 Java 程式的原始碼(Source code)之後,還必須安裝 JDK,才可以進行接下來的編譯、測試等工作。

• JRE

如果您在網路上遇到一個含有 Java Applet 的網頁,卻只看一片灰白的畫面,或者是您無法執行一個 Java 所撰寫的應用程式,您的電腦中可能沒有安裝 JRE。

在之後您實際開發 Java 程式時,您會發現所編譯出來的檔案其實容量並不大,像 Applet 這樣的應用,Java 程式是從網路上下載的,所以編譯出來的檔案不能很大,以節省程式下載時間,為了縮小檔案的體積,有一些 Java 標準的元件,必須要能在運行程式時直接從 JRE 中取得。

簡單的說,如果一個 Applet 程式需要使用 100 個資源,而其中 80 個資源是標準常用的元件,若這些元件直接安裝在您的電腦上,則下載 Applet 程式時只需下載 20 個資源,以節省下載的時間,剩下的 80 個標準元件可從執行環境中取得。

JRE 全名為 Java Runtime Environment,中文名為 Java 執行環境,目的在提供 Java 應用程式相關資源的一個環境,像是標準類別庫(Class library),Java 擬機器等。

圖1-4、要執行 Java 程式,必須有 Java 執行環境

簡單的說,您的電腦如果要運行 Java 程式,JRE 是必須安裝的基本要求。

• JVM

使用 Java 撰寫程式的好處之一是,您可以讓 Java 程式在安裝有 Java 執行環境的設備上直接執行,而不用理會該設備上 運 行 的 是 什 麼 樣 的 平 台 , 像 是 Linux 、 Macintosh 、Windows、Solaris 等,其背後的功臣就是 JVM。

JVM 全名為 Java Virtual Machine,包括在 JRE 之中,您所撰寫並編譯好的 Java 程式會將 JVM 當作一台真實的機器,而不用知道它是運行於哪一個作業系統之上,JVM 會將編譯過的 Java 程式轉換為與平台相依的原生碼(Native code),讓 Java 程式可以運行於各個平台之上。

圖1-5、JVM 實現 Java 程式跨平台的可能性

提示

虛擬機器這個名字的由來是因為它是一套軟體,可以執行:通常由 CPU 或是“硬體機器”所完成的工作。