<本文來自互聯網,僅限學習交流>
很多友友對java編程很好奇,很感興趣!下面@月下@與各位分享一下java編程啓蒙篇,讓大家能夠比較清楚的認識一下我們所玩的java遊戲背後的這些簡單編程與認識!!
遊戲,看看今年遊戲的火爆勁頭,大家可體會到它的無窮魅力。越來越多的程序員加入到遊 戲開發這個行業中來。而且遊戲開發本身是種很大的樂趣與挑戰。 本系列就是利用 Java 這門語言教大家一步一步學習遊戲開發,領會 Java 遊戲開發的 每一個技術要點。讓大家都能靈活使用 Java 這門語言工具,都能用 Java 打造屬於自己的 遊戲。是本系列的最終目的。 有過 Java 經驗的朋友一定會奇怪,在 Java 企業級應用(J2EE)和 Java 移動應用 (J2ME)橫行 Java 天下的時候,我們爲什麼選擇了 Java 遊戲開發?原因很簡單,遊戲開 發主要是利用 J2SE 技術,而 J2EE、J2ME 都是在 J2SE 的基礎上發展起來的,也必須依 託 J2SE 而存在,三者是相輔相成的。J2SE 是基礎,萬丈高樓平地起,只要你的基礎打好 了,有什麼程序不能做呢?而在 J2SE 上也有很多成功的應用開發。你甚至能很方便的把 你開發的遊戲程序移植到上面兩個應用方向中去。 好了,帶上你的信心和決心,和我們一起走向這奇妙之旅吧。 在第一部分,我們主要是針對 Java 初學者,介紹 Java 語言的一些特性、簡單運用。 讓大家活動活動關節。如果你是一位有經驗的 Java 程序員,你可以跳過本章,但是了解一 下這部分中關於 Java 在遊戲開發方向的知識對你後面的學習將會有不少幫助。 目錄導引: 一、Java 簡介 二、Java 環境設定 三、Java 基本語法 四、Java 開發遊戲的優劣 五、遊戲開發中常用 Java API 包 六、參考資料 一、Java 簡介 Java 是 SUN 公司研發的一門語言,自從 1995 年發布以來,它以其優越的面向對象思 想及簡便的功能得到了廣泛的應用。 微軟總裁比爾·蓋茨說: “Java 是最卓越的程序設計語言”。 1997 年開始,許多大學已經用 Java 取代 C 當作程序設計教學語言。現在到處都可見到 Java,Java 已經變成了程序員共通的語言。它已經漸漸地滲透到各領域,如果你是程序員, 你可能遲早都會接觸到 Java。然而 Java 到底什麼呢? Java 是一個類似 C++ 的面向對象程序設計語言。它和其他語言一樣有自己的語法和 撰寫規則。 我們經常提到的 Java 平臺是由 Java 應用編程接口 (API) Java 虛擬機 和 (JVM) 構成。Java API 即 Java 爲程序員提供的一套已經編譯好的功能接口。 Java 虛擬機(JVM)是 Java 中最出色的設計之一,它是建立在 CPU 和 OS 的之上的一 個虛擬平臺。 我們的 Java 程序並不是在本機操作系統上直接運行而是在 Java 虛擬機上執行, 由 Java VM 向本機操作系統進行解釋。這樣 Java 程序就可以在不同的平臺上執行,也就 是所謂的“一次編寫,到處執行”。這就是說,任何安裝有 Java VM 的計算機系統都可以運 行 Java 程序,而不論最初開發應用程序的是何種計算機系統。比如你在 Window 平臺下 撰寫的 Java 程序, 可不做任何修改而直接在 Linux 平臺上運行。 不同的平臺有不同的 Java VM 版本。Java 平臺結構如下圖的所示: 人們提到“學習 Java”,通常他們指的是 Java 語言和 API。 二、Java 環境設定 爲了能夠編寫並運行我們所編寫的 Java 程序,我們需要在自己的本地機器中安裝 JDK 開發包,JDK 是內置各種 Java 開發工具、Java 虛擬機、Java API 的一個壓縮包。我 們可從 java.sun.com 網站免費下載最新版本使用。這裏要注意不同的系統平臺 JDK 壓縮 包是有所出入的。下面介紹的方法我們是以 Windows 平臺爲基礎。Linux 下的處理和這類 似,只是文件擴展類型有所變化。 下 載 後 的 JDK 是 個 執 行 文 件 , 我 們 運 行 後 可 直 接 安 裝 , 缺 省 的 安 裝 路 徑 是 C:\j2sdk1.4.1_02。爲了能夠讓電腦找到你要運行的程序,JDK 會自動在你的系統環境變量 中加入 JAVA_HOME= C:\j2sdk1.4.1_02 但是要想很方便的運行自己的程序,這還不夠,我們還得自己設置系統的類路徑。 類路徑的設置方式可以是採用 javac 編譯器命令和 java 解釋器命令中的 -classpath 選項,或通過對設置 classpath 環境變量的來完成。在 Java 程序開發中,我們會大量引用 到 Java 提供的 API 類庫,所以要告訴電腦這些 Java API 所在的位置。classpath 就是幫 我們尋找這些 Java 類路徑的配置,如同 DOS 裏面的 path 一樣。 要成功編譯和運作 Java 程序,我們還必須告訴電腦 JDK 中的編譯器 javac.exe 和執 行工具 java.exe 所在的路徑。這兩個工具是放在你的 JDK 安裝目錄的 bin 目錄下,如: C:\j2sdk1.4.1_02\bin 我們來看看電腦中具體的環境設置: PATH=C:\j2sdk1.4.1_02\bin;c:\windows;c\windows\command classpath=.; C:\j2sdk1.4.1_02\lib\tools.jar;d:\test 注意:classpath 中的“.”代表的是當前目錄,可以讓你在當前目錄下編譯自己的 class 而不 會出錯。D:\test 是我們自己指定的任意 class 放置路徑。這樣即使 Java 操作不在當前目錄 中,也可編譯 d:\test 目錄下的 Java 類。 三、Java 基本語法 編寫 Java 程序的 編寫 Java 程序的 IDE 工具很多,如 Eclipse、JCreator、JBuilder 都是很不錯的工具。 而最簡單的方法是使用文本編輯器。下面我們就用文本編輯器創建一個 Java 應用程序,並 以此爲基礎說說 Java 的基本語法,感受您的第一個 Java 程序所帶來的成就感。在開始之 前,您可先下載我們源程序 TestDate.java,或者手工輸入: package my.test; import java.util.*; /** * 日期測試程序 * @author 天翼.李 */ public class TestDate { // 聲明私有變量 pass private Date pass; /** * 打印日期方法,並初始化 pass 的值 */public void printDate() { // 調用日期函數 pass =new Date(); // 顯示當前日期 System.out.println("當前日期:"+pass); } public static void main(String arg[]) { // 初始化類 TestDate TestDate testDate = new TestDate(); testDate.printDate(); } } 接着要編譯程序 編譯程序就是把 java 源程序轉換爲 Java VM 能夠理解的字節碼,這樣,任何安裝有 Java VM 的計算機就可以解釋並運行該程序。我們在 Dos 窗口的命令行中輸入下面命令, 就可成功編譯 TestDate.java 程序: javac TestDate.java 解釋並運行程序 Java 程序的解釋和運行是指調用 Java VM 字節碼解釋器把 Java 字節碼轉換成與平 臺相關的機器碼, 以便您的計算機能夠理解並運行該程序。 在運行上面例子程序前我們先要 在當前目錄下新建 my 目錄,並在 my 下面新建子目錄 test,並把我們編譯過後的 TestDate.class 文件移到 test 下面。然後在 DOS 窗口的命令行輸入: java my.test.TestDate 在命令行上,您可以看到終端窗口顯示如下: 爲什麼要新建這些子目錄呢?下面的 package 機制將會告訴你一切。如果你認爲有點 麻煩了,也沒關系,大部分的 Java IDE 會自動在你的系統中生成這些目錄。或者你在理解 了下面的 package 機制後,注釋掉 package my.test,直接在當前目錄下進行操作演示。 包(package) 每個人寫的程序命名方法各異, 如何有效的對這些名字進行管理, 而不會出現重名的現 象。Java 借鑑 Internet 域名地址的唯一性方法,引入了 package 機制。package 利用倒寫 的 Internet 域名,用點符號分隔每一個路徑。這樣保證不同功能的類庫放入不同的目錄之 下。在此 package 相當於命名空間,不同命名空間的類不會相互幹擾。在本地新建包路徑 時會按“.”符號來新建相應的子目錄。上例中的: package my.test; 相當於新建一個 my.test 的包,而此包就是按 my\test 的目錄結構來分隔 TestDate 類和外 界的類。所以上面我們編譯後的 TestDate.class 文件要放置在目錄 my\test 下面。 包除了命名分隔的功能外, 還有一個功能, 它能設置本命名空間對另一個命名空間類的 訪問權限。只有命名爲 public 的類才能被另一個命名空間的類調用。在下面的權限小節我 們將會看到 Java 幾種權限劃分方式。 Import Import 和 package 是相對應的, package 主要管理的是自己類庫,而 import 主要的是 處理對另一個包中的類庫調用。由於 package 機制隱藏了類庫的可見性,要想引用另一個 類庫的中的類來實現相應的功能, 我們就得知道這個類庫所在的位置, 也即要得到類庫上的 包路徑。 程序開始時 Java 虛擬機會根據環境變量 classpath 來查找引用的包。如果沒有找到, 就到當前程序所在的目錄查找,如果再沒找到,程序運行就會出錯。看到這,你是否明白了 classpath 所發揮的類庫路徑配置作用!Java 找到引用的路徑後,會把路徑指定的類全部加 載到內存中去,這是 Java 的一大特色,用以加快開發者調用程序的速度。 import java.util.*; 爲了新建 Date 類型的變量實現我們的顯示當前日期功能,例子中我們就引用了 java.util 包, 這裏用的“*”代表這個包下的所有類, 包括這個包下的 Date 類。 如果我們只要引用 Date 這個類,也可這樣寫: import java.util.Date; 這樣程序運行過程中只要加載指定的類到內存中而不要加載所有的類。 如果大家對加載過程有興趣,可嘗試在執行程序時加入參數 –verbose,即: java –verbose my.test.TestDate 屏幕上會顯示所有引入內存中的類庫名稱。 面向對象 Java 是一種面向對象(OOP)的編程語言。在 Java 中,面向對象是以類的形式出現 的,對象則是類的實例。所以要學習 Java 的類首先必須了解面向對象思想。 1、類 我們用修飾符“class”來表示類。它代表某一類事物的類型,其內封裝了這一事物總的外 觀長相(數據成員)和行爲舉止(成員函數) ,如鳥類就可以是一個 class,其中就封裝了鳥 類的基本行爲:飛行,也封裝了鳥類的基本外觀:都有翅膀。對類封裝後,即使我們改變了 類的一些代碼,只要不改變其中被調用的方法,引用這個類