當前位置:才華齋>IT認證>計算機等級>

Java程式設計開發簡介

計算機等級 閱讀(2.66W)

Java由規範確定,包含程式語言、編譯器、核心庫和JVM (執行時Java virtual machine)。下面是小編整理的關於Java程式設計開發簡介,希望大家認真閱讀!

Java程式設計開發簡介

  Java簡介

  歷史

Java 程式語言由Sun微電子公司的James Gosling於1991年建立。1995年釋出第一個版本(Java 1.0)。2010年 Sun 微電子公司被 Oracle 公司收購,現在 Java 語言由 Oracle公司控制和管理。2006年Sun宣佈Java遵循GNU General Public License (GPL), Oracle繼續該專案,即OpenJDK。隨著時間的推移,新的增強版本的 Java 已經發布,最新的版本是 Java 1.8 即 Java 8。

Java由規範確定,包含程式語言、編譯器、核心庫和JVM (執行時Java virtual machine)。Java執行時允許軟體開發者用其他語言編碼,仍然執行在Java虛擬機器上。 Java平臺通常與Java虛擬機器和Java核心庫相關聯。

  Java 虛擬機器

Java 虛擬機器(JVM)可以理解為是由軟體實現的虛擬計算機,可以像物理計算機一樣執行程式程式碼。Java 虛擬機器在不同作業系統下有特定的版本,比如:針對 Linux 作業系統的版本與針對 Windows 作業系統的版本是不一樣的。

Java程式由 Java 編譯器編譯成位元組碼(bytecode),編譯後的位元組碼由 Java 虛擬機器解釋執行。

  JRE 和 JDK

Java 的釋出版本有兩種,Java Runtime Environment(JRE)以及 Java Development Kit(JDK)。

Java Runtime Environment(JRE)包含執行 Java 程式需要的必要元件:Java 虛擬機器以及 Java 類庫。

Java Development Kit(JDK)包含用來建立 Java 應用程式的必要工具,比如,Java 編譯器、Java 虛擬機器以及 Java 類庫。

Java 語言的特點

Java 語言的設計目標是:一次編寫到處執行。

Java 語言有以下特點:

平 臺無關性:Java 使用 Java 虛擬機器執行 Java 程式,Java 虛擬機器相當於應用程式和作業系統間的抽象層,應用程式不會直接訪問作業系統。這使得 Java 應用程式具備高度的可移植性。一個相容標準和遵循規則的 Java 應用程式可以無需修改的在所有已支援的平臺上工作,例如: Windows 和 Linux。

面向物件的程式語言:除了原生資料型別,Java 語言中一切皆物件。

強型別程式語言:Java 語言是強型別程式語言。比如:變數型別需要預先定義,嚴格的型別轉換檢查(大多數情況下有程式猿完成)。

解 釋性和編譯型語言: Java 原始碼被編譯成位元組碼(bytecode)這樣使得 Java 語言具備平臺性。這些位元組碼(bytecode)指令由 Java虛擬機器(JVM)解釋執行。JVM 使用 Hotspot 編譯技術會將效能相關的位元組碼指令轉換為對用作業系統的二進位制程式碼執行。

自動記憶體管理: Java 。管理新建立物件的記憶體分配和回收工作應用程式程式碼不直接訪問記憶體。由稱之為垃圾回收(garbage collector)的機制自動刪除沒有無引用的物件。

Java 語言的語法與 C++ 語言的語法非常接近,Java 語言是大小寫敏感的,比如: myValue 變數與 myvalue 變數是兩個不同的變數。

  Java語言的開發過程

Java 原始碼檔案是一個純文字文件,Java 程式設計師通常在 Integrated Development Evvironment(IDE)中編寫 Java 程式。IDE是幫助程式設計師完成編碼工作的工具,它具備自動格式化程式碼、語法高亮等功能。

Java 程式設計師(或 IDE)呼叫 Java 編譯工具(javac)編譯原始碼,Java 編譯工具會將原始碼編譯成位元組碼(bytecode)指令。這些指令儲存在 s 檔案中由 Java 虛擬機器(JVM)來執行。

垃圾回收(Garbage collector)

JVM 自動回收沒有被引用的記憶體空間,它會檢查所有物件的'引用並查詢那些物件可以被自動回收。垃圾回收機制使程式設計師無需手工管理記憶體,但是程式設計師還是需要保證程 序中沒有不需要的物件引用,否則垃圾回收機制就無法自動釋放物件記憶體。我們通常把不需要的物件引用通常被稱為“記憶體洩漏”。

Classpath

Java 編譯器以及 Java 執行時通過類路徑(classpath)來查詢和裝載 s檔案。比如,如果你打算在應用程式中使用第三方 Java 類庫那麼你需要把類庫的路徑新增到你的類路徑中,否則你的應用程式無法編譯或者執行。

安裝 Java

檢查安裝

你的計算機可能已經安裝了 Java,你可以在控制檯中使用下面命令來測試 Java 是否已安裝(如果你使用 Windows 作業系統,可以按下 Win+R,輸入 cmd 後回車即可開啟控制檯):

java -version

如果你的計算機已經安裝了 Java,你應該會看到輸出已安裝的 Java 版本資訊。如果命令列返回應用程式沒有找到,那麼你就需要安裝 Java 了。

  安裝 Java

在 Ubuntu 作業系統中,你可以使用下面的命令安裝 Java:

sudo apt-get install openjdk-7-jdk

對於 Microsoft Windows 作業系統,可以到 Oracle 網站 下載對應的安裝包,網站也有相應的文件來指導你如何在其他作業系統上安裝 Java。

如 果在安裝過程中出現了問題,可以使用“how to install JDK on your_os"關鍵詞在谷歌搜尋(對於國內使用者則使用”如何在your_os安裝JDK“關鍵詞在百度搜索)記住把 "your_os" 替換為你的作業系統名稱哦,比如:Windows、Ubuntu、Mac OS X 等等。

2.3 驗證安裝

回到剛才的命令列(不知道那個?參考2.3節)執行下面的命令:

  java -version

你會得到下面的輸出內容:

java version "1.7.0_25"

OpenJDK Runtime Environment (IcedTea 2.3.10) ()

OpenJDK 64-Bit Server VM (build 23.7-b01, mixed mode)

2.4 如何檢視當前使用的是32位或64位版本的 Java

在64位作業系統上你可以使用32位或64位版本的Java,如果 java -version 命令的輸出中包含 64-bit 這樣的字串說明你正在使用的 Java 版本是64位的,否則你正在使用的 Java 版本是32位的。下面的是64位版本的輸出:

java version "1.7.0_25"

OpenJDK Runtime Environment (IcedTea 2.3.10) ()

OpenJDK 64-Bit Server VM (build 23.7-b01, mixed mode)

編寫原始碼

下面的 Java 程式碼是在 Linux 作業系統命令列上使用文字編輯器(vim、emacs等)編寫的。其他作業系統上也類似,這裡就不再做介紹了。

首先需要新建一個目錄來儲存原始碼,這裡我們使用目錄 homevogellajavastarter 。如果你使用 Windows 目錄可能是 c: empjavastarter ,後面我們會使用 "javadir" 來代表這個路徑。

開啟一個文字編輯器,不如:Linux作業系統下的 gedit、vim、emacs等,Windows下的 Notepad等,然後輸入以下程式碼:

:

// a small Java program

public class HelloWorld {

public static void main(String[] args) {

tln("Hello World");

}

}

注意:不要使用富文字編輯器,如:Microsoft Word 或者 LibreOffice 來編寫原始碼。

將原始碼儲存到 “javadir” 目錄下的 檔案中。Java 原始檔名稱始終要與原始碼中得類名一致,並且以 作為字尾。這個例子中原始檔名為 因為我們定義的類名是 HelloWorld 。

  編譯、執行

開啟一個Shell(Linux以及Unix-like)或者命令列(Windows),使用 cd javadir 進入 "javadir" 目錄,在我們的例子中命令是 cd homevogellajavastarter 。使用 ls (Window中是 dir )來驗證原始檔是否存在。

使用下面命令編譯原始檔:

javac

命令完成後,重新使用 ls (或者 dir )命令檢視目錄內容,可以看到目錄中多出一個 s 檔案,說明你已經成功的將原始碼編譯成位元組碼了。

提示:預設情況下 編譯器 會將每個類檔案放在和原始檔下共同的目錄中。你可以在編譯時使用 -d 引數來指定不同的目錄。

現在可以執行你的第一個 Java 應用程式了。確保你還在 "javadir" 目錄,然後執行下面命令來執行程式:

  java HelloWorld

程式會在終端輸出 "Hello World" 字串,參考下圖

使用類路徑(classpath)

你可以通過指定類路徑從其他位置執行應用程式。還是開啟Shell或者控制檯,然後隨便進入一個目錄,輸入以下命令:

  java HelloWorld

如果你當前不在編譯後類檔案所在的目錄,那麼 Java 虛擬機器 會提示錯誤:"Exception in thread "main" assDefFoundError: HelloWorld"。

要正確執行程式,輸入下面的命令(將mydirectory替換為你的” java dir"):

java -classpath "mydirectory" HelloWorld

這樣你又可以看到 "HelloWorld" 字串輸出了。

Java 語言結構

基礎:包(Package)、類(Class)和物件(Object)

瞭解 Java 的包(Package)、類(Class)和物件(Object)這些基礎術語是非常重要的,這部分內容將概要的介紹這些術語。

包(Package)

Java 使用包來組織類,通常按照業務邏輯將類分組到不同的包中。比如:應用程式的所有圖形介面可能被分組到 s 包中。

通常的做法是使用公司域名的倒序作為頂層包,比如:公司的域名是 "" 那麼這個公司 Java 應用的頂層包名可能是 cn.4byte 。

包的另一個重要用途是避免類命名衝突,類命名衝突是指兩個開發人員為他們編寫的類使用了同樣的全限定名。Java 中類的全限定名是 報名+‘.'+類名,比如: oWorld 。

如果沒有包,當兩個程式猿同時給他編寫的類起名為 Test 時就會產生命名衝突(而且作業系統也無法建立檔案)。結合 Java 包機制,我們可以明確的告訴 虛擬機器 我們將使用哪個 Test 類,比如:第一個程式設計師將 Test 類放到 report 包中,另一個 程式設計師 將他寫得 Test 類放到 xmlreader 包中,那麼他們就可以通過全限定名來明確區分兩個類 以及 。

  類(class)

定義:類是一個模板,用來定義物件的資料以及行為,可以理解類為物件的藍圖。

在 Java 中使用 class 關鍵字來定義類,類名的第一個字母必須大寫。類體需要在'{..}'中定義。如:

:

package test;

  class MyClass {

}

類的資料儲存在屬性中,類行為由方法實現。Java 原始檔需要以 "類名“ + ". java " 的形式儲存。