第程式语言与Java的基础

上传人:cn****1 文档编号:591361320 上传时间:2024-09-17 格式:PPT 页数:76 大小:1.76MB
返回 下载 相关 举报
第程式语言与Java的基础_第1页
第1页 / 共76页
第程式语言与Java的基础_第2页
第2页 / 共76页
第程式语言与Java的基础_第3页
第3页 / 共76页
第程式语言与Java的基础_第4页
第4页 / 共76页
第程式语言与Java的基础_第5页
第5页 / 共76页
点击查看更多>>
资源描述

《第程式语言与Java的基础》由会员分享,可在线阅读,更多相关《第程式语言与Java的基础(76页珍藏版)》请在金锄头文库上搜索。

1、第1章 程式語言與Java的基礎1-1 程式語言的基礎1-2 Java的基礎1-3 Java應用程式開發環境的建立1-4 建立Java主控台應用程式1-5 Gel整合開發工具的使用1-6 Java程式架構與寫作風格1-1 程式語言的基礎1-1-1 程式、軟體與應用程式1-1-2 程式語言的種類1-1-3 程式是如何執行1-1-1 程式、軟體與應用程式-程式程式(程式(ProgramsPrograms)是使用指定程式語言所撰)是使用指定程式語言所撰寫沒有混淆文字、數字和鍵盤符號組成的特殊符寫沒有混淆文字、數字和鍵盤符號組成的特殊符號,這些符號組合成指令和敘述,再進一步編寫號,這些符號組合成指令和

2、敘述,再進一步編寫成程式碼,程式碼可以告訴電腦解決指定問題的成程式碼,程式碼可以告訴電腦解決指定問題的步驟。步驟。簡單的說,程式就像是一個轉換器,當從電腦鍵簡單的說,程式就像是一個轉換器,當從電腦鍵盤或滑鼠取得輸入資料後,執行程式就可以將資盤或滑鼠取得輸入資料後,執行程式就可以將資料轉換成有用的資訊,如下圖所示:料轉換成有用的資訊,如下圖所示:1-1-1 程式、軟體與應用程式-軟體與應用程式軟體(Softwares)是一種電腦執行的應用程式或作業系統,通常軟體是一個或多個程式的泛稱,或是整套應用程式。應用程式(Applications)是一種處理指定工作的電腦程式,例如:數學計算分析、文書處理

3、、試算表和程式語言整合開發工具等。1-1-1 程式、軟體與應用程式-主控台與視窗應用程式視窗應用程式(視窗應用程式(Windows ApplicationsWindows Applications)是使用)是使用GUIGUI(Graphic User InterfaceGraphic User Interface)圖形介面來)圖形介面來輸入與輸出資料,一種更人性化使用者介面的應輸入與輸出資料,一種更人性化使用者介面的應用程式。用程式。不同於早期不同於早期DOSDOS時代或時代或UNIX/LinuxUNIX/Linux系統的主控台系統的主控台應用程式(應用程式(Console Applicati

4、onsConsole Applications),使用者是在),使用者是在終端機(終端機(TerminalsTerminals)執行應用程式,其使用)執行應用程式,其使用介面都是文字模式的鍵盤輸入,或單純文字內容介面都是文字模式的鍵盤輸入,或單純文字內容的輸出結果,稱為命令列模式(的輸出結果,稱為命令列模式(Command-Command-line Interfaceline Interface)。)。1-1-2 程式語言的種類-說明程式語言隨著電腦科技的進步,已經延伸出龐大的族群。在程式語言的分類上,以發展世代來區分,如下表所示:1-1-2 程式語言的種類-低階語言低階語言(Low Leve

5、l Languages)是一種偏向電腦容易了解的程式語言,簡單的說,它是電腦看得懂的程式語言。所以執行效率高,但是使用者並不易學習。1-1-2 程式語言的種類-低階語言(機器語言)機器語言(Machine Language)程式使用0和1二進位表示的程式碼,電腦可以直接執行程式,執行效率最高,如下所示:0111 0001 0000 11110111 0001 0000 11111001 1101 1011 00011001 1101 1011 00011-1-2 程式語言的種類-低階語言(組合語言)組合語言(Assembly Language)組合語言使用簡單符號的指令集代表機器語言0和1表示

6、的二進位程式碼,只需使用組譯程式(Assemblers)就可以轉換成機器語言。在電腦上執行,它是一種十分接近機器語言的程式語言,如下所示:MOV AX 01MOV AX 01MOV BX 02MOV BX 02ADD AX BXADD AX BX1-1-2 程式語言的種類-高階語言高階語言(高階語言(High Level LanguagesHigh Level Languages)是一種接近)是一種接近人類語言的程式語言,或稱為半英文(人類語言的程式語言,或稱為半英文(Half-Half-englishenglish)的程式語言。因為電腦並不能馬上看的)的程式語言。因為電腦並不能馬上看的懂,所

7、以需要進一步翻譯,在轉換成機器語言後,懂,所以需要進一步翻譯,在轉換成機器語言後,其轉換的程式碼通常比直接使用機器語言撰寫的其轉換的程式碼通常比直接使用機器語言撰寫的冗長,所以效率較低,但是非常適合使用者學習。冗長,所以效率較低,但是非常適合使用者學習。目前常見的高階語言有:目前常見的高階語言有:BasicBasic、C/C+C/C+、C#C#、JavaJava、FORTRANFORTRAN、COBOLCOBOL和和PascalPascal等,高階語等,高階語言需要進行翻譯,將程式碼轉譯成機器語言的執言需要進行翻譯,將程式碼轉譯成機器語言的執行檔案後,才能在電腦上執行。行檔案後,才能在電腦上執

8、行。1-1-2 程式語言的種類-高階語言(編譯程式)編譯程式(Compilers)C/C+等程式語言屬於編譯語言,編譯程式需要檢查完整個程式檔案的程式碼,在完全沒有錯誤的情況下,才會翻譯成機器語言的程式檔案,其主要功能有兩項,如下所示:n n檢查程式錯誤。檢查程式錯誤。n n將程式翻譯成機器語言的程式檔案。將程式翻譯成機器語言的程式檔案。1-1-2 程式語言的種類-高階語言(直譯程式)直譯程式(Interpreters)早期BASIC語言(例如:BASICA、QuickBasic等)和目前網頁技術的腳本(Scripts)語言,例如:VBScript和JavaScript都屬於直譯語言。直譯程式

9、並不會輸出可執行檔案,而是直接一個指令一個動作,一列一列的執行程式碼,相對的,其執行效率低,但是非常適合在系統開發階段的程式除錯。1-1-3 程式是如何執行-說明程式在電腦實際執行的過程對於高階程式語言來程式在電腦實際執行的過程對於高階程式語言來說,例如:說,例如:BASICBASIC或或PASCALPASCAL等並非十分重要。等並非十分重要。不過,對電腦執行程式有一定的認識,在設計程不過,對電腦執行程式有一定的認識,在設計程式時仍然有十分大的助益。式時仍然有十分大的助益。不論使用高階或低階程式語言,其建立的程式最不論使用高階或低階程式語言,其建立的程式最後都會編譯成電腦看的懂的機器語言,這些

10、指令後都會編譯成電腦看的懂的機器語言,這些指令是是CPUCPU支援的指令集(支援的指令集(Instruction SetInstruction Set)。不)。不同同CPUCPU支援不同的指令集,換句話說,雖然高階支援不同的指令集,換句話說,雖然高階語言有很多種,但是語言有很多種,但是CPUCPU只懂一種語言,也就是只懂一種語言,也就是其能執行的機器語言。其能執行的機器語言。1-1-3 程式是如何執行-圖例1-1-3 程式是如何執行-執行程式CPUCPU執行機器語言程式是依序將儲存在記憶體的執行機器語言程式是依序將儲存在記憶體的機器語言指令取出和執行(機器語言指令取出和執行(Fetch-and

11、-Fetch-and-executeexecute)。)。簡單的說,簡單的說,CPUCPU就是從記憶體取出指令,然後執就是從記憶體取出指令,然後執行此指令,取出下一個指令,再執行它。行此指令,取出下一個指令,再執行它。CPUCPU執執行程式的方式,如下所示:行程式的方式,如下所示:n n電腦的主記憶體儲存機器語言的程式碼和資料。電腦的主記憶體儲存機器語言的程式碼和資料。n nCPUCPU從記憶體依序取出一個個機器語言指令,然後執從記憶體依序取出一個個機器語言指令,然後執行它,行它,CPUCPU並非真正了解機器語言在作什麼?這只是並非真正了解機器語言在作什麼?這只是CPUCPU的例行工作,依序執

12、行機器語言指令。的例行工作,依序執行機器語言指令。1-1-3 程式是如何執行-中央處理器(CPU)電腦電腦CPUCPU提供實際運算功能,個人電腦都是使用提供實際運算功能,個人電腦都是使用單晶片的單晶片的ICIC(Integrated CircuitIntegrated Circuit),其主要的),其主要的功能是使用功能是使用ALUALU(Arithmetic and Logic Arithmetic and Logic UnitUnit)的邏輯電路進行運算,以便執行機器語言)的邏輯電路進行運算,以便執行機器語言的指令。的指令。在在CPUCPU擁有很多組暫存器(擁有很多組暫存器(Registe

13、rsRegisters),暫),暫存器是位在存器是位在CPUCPU中的記憶體,可以暫時儲存資料中的記憶體,可以暫時儲存資料或機器語言指令,例如:執行加法指令需要或機器語言指令,例如:執行加法指令需要2 2個運個運算元,這兩個運算元資料就是儲存在暫存器。算元,這兩個運算元資料就是儲存在暫存器。1-1-3 程式是如何執行-記憶體(說明)當我們執行程式時,作業系統可以將儲存在硬碟當我們執行程式時,作業系統可以將儲存在硬碟或軟碟的執行檔案載入電腦主記憶體(或軟碟的執行檔案載入電腦主記憶體(Main Main MemoryMemory),這就是),這就是CPUCPU執行的機器語言指令,執行的機器語言指令

14、,CPUCPU從記憶體依序載入指令和執行。從記憶體依序載入指令和執行。事實上,程式碼本身和使用的資料都是儲存在事實上,程式碼本身和使用的資料都是儲存在RAMRAM(Random Access MemoryRandom Access Memory),每一個儲存),每一個儲存單位有數字編號稱為位址(單位有數字編號稱為位址(AddressAddress)。如同)。如同大樓信箱,門牌號碼是位址,信箱內容是程式碼大樓信箱,門牌號碼是位址,信箱內容是程式碼或資料,儲存資料佔用的記憶體空間大小,需視或資料,儲存資料佔用的記憶體空間大小,需視使用的資料型態而定。使用的資料型態而定。1-1-3 程式是如何執行-

15、記憶體(存取)電腦CPU中央處理器存取記憶體資料的主要步驟,如下所示:n nStep 1Step 1:送出讀寫的記憶體位址:當:送出讀寫的記憶體位址:當CPUCPU讀取讀取程式碼或資料時,需要送出欲取得的記憶體位程式碼或資料時,需要送出欲取得的記憶體位址,例如:記憶體位址址,例如:記憶體位址4 4。n nStep 2Step 2:讀寫記憶體儲存的資料:讀寫記憶體儲存的資料:CPUCPU可以從可以從指定位址讀取記憶體內容,例如,位址指定位址讀取記憶體內容,例如,位址4 4的內的內容是容是0101010101010101,換句話說,取得資料是,換句話說,取得資料是0101010101010101的

16、二進位值,每一個的二進位值,每一個0 0或或1 1是一個是一個位元(位元(BitBit),),8 8個位元稱為位元組個位元稱為位元組(ByteByte),這是電腦記憶體的最小儲存單位。),這是電腦記憶體的最小儲存單位。1-1-3 程式是如何執行-輸入/輸出裝置電腦的輸入/輸出裝置(Input/Output Devices)是程式的窗口,可以讓使用者輸入資料和顯示程式的執行結果。目前而言,電腦最常用的輸入裝置是鍵盤和滑鼠;輸出裝置是螢幕和列表機。1-1-3 程式是如何執行-次儲存裝置次儲存裝置(次儲存裝置(Secondary Storage UnitSecondary Storage Unit)

17、是一種能)是一種能夠長時間和提供高容量儲存資料的裝置。電腦程夠長時間和提供高容量儲存資料的裝置。電腦程式與資料是在載入記憶體後,才依序讓式與資料是在載入記憶體後,才依序讓CPUCPU來執來執行,不過,在此之前這些程式與資料是儲存在次行,不過,在此之前這些程式與資料是儲存在次儲存裝置,例如:硬碟機。儲存裝置,例如:硬碟機。當我們在當我們在WindowsWindows作業系統使用作業系統使用【記事本記事本】編輯編輯JavaJava程式碼時,這些資料只是暫時儲存在電腦的程式碼時,這些資料只是暫時儲存在電腦的主記憶體,因為主記憶體在關閉電源後,其儲存主記憶體,因為主記憶體在關閉電源後,其儲存的資料就會

18、消失,為了長時間儲存這些資料,我的資料就會消失,為了長時間儲存這些資料,我們需要將它儲存在電腦的次儲存裝置,即儲存在們需要將它儲存在電腦的次儲存裝置,即儲存在硬碟中的程式碼檔案。硬碟中的程式碼檔案。1-2 Java的基礎1-2-1 Java平台1-2-2 Java語言的版本1-2-3 Java程式語言的特點1-2-1 Java平台-說明Java程式語言的平台(Platform),平台是一種結合硬體和軟體的執行環境,簡單的說,電腦程式是在平台上執行,因為Java是與硬體無關和跨平台的程式語言,所以Java平台屬於一種軟體平台,主要是由JVM和Java API兩個元件所組成。1-2-1 Java平

19、台-JVMJVM(Java Virtual Machine)虛擬機器是一台軟體的虛擬電腦,Java原始程式碼並 不 是 使 用 Java編 譯 程 式 ( Java Compiler)編譯成其安裝實體電腦可執行的機器語言,而是JVM虛擬機器的機器語言,稱為位元組碼(Bytecode)。位元組碼是一種可以在JVM執行的程式,換句話說,電腦作業系統需要安裝有JVM, 才 可 以 使 用 Java直 譯 程 式 ( Java Interpreter)來直譯和執行位元組碼,1-2-1 Java平台-JVM(圖例)1-2-1 Java平台-Java APIJava API(Java Applicatio

20、n Programming Interface)是軟體元件的集合,也就是在C/C+語言所謂的函式庫,提供集合物件、GUI元件、檔案處理、資料庫存取和網路等相關的類別和介面,稱為套件(Packages),詳細的說明請參閱第8章:巢狀類別、介面和套件。1-2-2 Java語言的版本JavaJava支援支援WindowsWindows、SolarisSolaris、LinuxLinux和和Mac OS XMac OS X作業系統。標準版的版本演進如下表所示:作業系統。標準版的版本演進如下表所示:1-2-3 Java程式語言-特點Java是一種簡單、功能強大、高效能和物件導向的程式語言,不只如此,Ja

21、va還擁有一些傳統程式語言所沒有提供的特點,如下所示:n n分散式分散式(DistributedDistributed)n n多執行緒多執行緒(Multi-ThreadingMulti-Threading)n n垃圾收集垃圾收集(Garbage CollectionGarbage Collection)n n例外處理例外處理(Exception HandlingException Handling)1-2-3 Java程式語言-分散式分散式(Distributed)Java語言最初的發展是一種網路程式語言,可以支援各種網路通訊協定,能夠建立分散式主從架構的應用程式,輕鬆存取網路上其它主機的資源

22、。1-2-3 Java程式語言-多執行緒多執行緒(Multi-Threading)Java語言支援多執行緒,在同一程式能夠建立多個執行的小程式,稱為輕量行程(Light Weight Process),以便執行不同的工作,並且支援同步功能,能夠避免死結(Deadlock)情況的發生。1-2-3 Java程式語言-垃圾收集垃圾收集(Garbage Collection)垃圾收集是指如何處理程式不再使用的記憶體空間,Java語言擁有垃圾收集能力,程式設計者不用擔心記憶體配置的問題,因為在執行Java程式時,自動會將不再使用的記憶體歸還給作業系統。1-2-3 Java程式語言-例外處理例外處理(Ex

23、ception Handling)電腦程式不可能沒有小臭蟲(Bugs),一些小錯誤可能只會產生錯誤結果,但是有一些小錯誤可能導致嚴重的系統當機問題。Java語言的例外處理可以讓程式更加強壯(Robust),這算程式執行時遇到不尋常的情況,也不會造成程式崩潰(Crashing)或整個系統當機。1-3 Java應用程式開發環境的建立1-3-1 Java語言的開發環境1-3-2 JDK的安裝1-3-3 JDK的環境設定1-3-4 安裝JDK說明文件1-3-5 程式編輯與開發工具1-3-1 Java語言的開發環境-說明程式語言的開發環境(Development Environment)是一組工具程式用

24、來建立、編譯和維護程式語言所建立的應用程式。目前高階程式語言大都擁有整合開發環境(Integrated Development Environment、簡稱IDE),在同一個應用程式就可以編輯、編譯、執行和除錯特定語言的應用程式。1-3-1 Java語言的開發環境-常用的整合開發環境1NetBeansNetBeans IDE IDE:NetBeansNetBeans是一個開放原始碼計是一個開放原始碼計劃,可以建立跨平台的桌上、企業和劃,可以建立跨平台的桌上、企業和WebWeb應用程應用程式,其網址:式,其網址:http:/http:/beans.org/ /。EclipseEclipse:開放

25、原始碼計劃建立的程式開發平台,:開放原始碼計劃建立的程式開發平台,並不限支援並不限支援JavaJava語言,也支援語言,也支援C C和和PHPPHP語言,其語言,其網址:網址:http:/http:/www.eclipse.orgwww.eclipse.org/ /。Borland Borland JBuilderJBuilder:BorlandBorland公司的公司的JavaJava整合開發整合開發環境,分成數種版本,環境,分成數種版本,TurboTurbo版可以免費下載,它版可以免費下載,它是是EclipseEclipse基礎的基礎的JavaJava整合開發環境,其網址:整合開發環境,其

26、網址:http:/http:/ Java語言的開發環境-常用的整合開發環境2Gel:Gexperts公司的免費整合開發環境,由Gerald Nunn使用Delphi開發支援中文使用介面的Java/JSP IDE,其網址為:http:/ Edition)和Pro(Pro Edition)兩種版本,其網址:http:/。1-3-2 JDK的安裝-說明一般來說,有些整合開發環境在安裝時就會同時一般來說,有些整合開發環境在安裝時就會同時安裝安裝JDKJDK,例如:,例如:JBuilderJBuilder,不過,大部分整合開,不過,大部分整合開發環境需要自行安裝發環境需要自行安裝JDKJDK,本書使用的

27、是,本書使用的是JDK JDK 6 6(Java SE Development Kit 6Java SE Development Kit 6),其下載網址),其下載網址為:為:http:/http:/ .後的次版號來表示,後的次版號來表示,而是改為更新而是改為更新UpdateUpdate來標示,以本書為例是使用來標示,以本書為例是使用JDK 6 Update 3JDK 6 Update 3,其下載,其下載WindowsWindows版版JDKJDK的檔名的檔名為為【jdk-6u3-windows-i586-p.exejdk-6u3-windows-i586-p.exe】後,只需執行後,只需執行

28、此檔案就可以安裝此檔案就可以安裝JDK 6JDK 6。1-3-2 JDK的安裝-圖例1-3-3 JDK的環境設定-說明在安裝好JDK後,如果使用整合開發環境,在安裝整合開發環境時會自動搜尋JDK安裝路徑,然後選擇使用的JDK版本即可。如果使用命令提示字元視窗以命令列指令編譯和執行Java程式,我們需要設定JDK執行環境,也就是在Windows XP新增環境變數Path的搜尋路徑C:Program FilesJavajdk1.6.0_03bin,其中C:Program FilesJavajdk1.6.0_03是JDK安裝路徑。1-3-3 JDK的環境設定-圖例JDK安裝路徑安裝路徑1-3-4 安

29、裝JDK說明文件-說明JDK 6 DocumentationJDK 6 Documentation說明文件提供說明文件提供JavaJava語言的語言的特點、新增功能和特點、新增功能和APIAPI套件的詳細說明,套件的詳細說明,JDKJDK說明說明文件的下載檔名為文件的下載檔名為【jdk-6-doc.zipjdk-6-doc.zip】。我們可以。我們可以使用使用WinZIPWinZIP等解壓縮工具,或等解壓縮工具,或JDKJDK內建內建jarjar工具程工具程式來解壓縮檔案,如下所示:式來解壓縮檔案,如下所示:C:Program FilesJavajdk1.6.0_03jar C:Program

30、 FilesJavajdk1.6.0_03jar xvfxvf e:Softwarejdk-6-doc.zip e:Softwarejdk-6-doc.zip EnterEnter上述指令是在命令提示字元視窗執行,可以上述指令是在命令提示字元視窗執行,可以解壓縮文件檔案,解壓縮文件檔案,e:e:是光碟機代碼,例如:是光碟機代碼,例如:筆者是在筆者是在JDKJDK安裝路徑安裝路徑C:Program C:Program FilesJavajdk1.6.0_03FilesJavajdk1.6.0_03解壓縮此檔案,可以看解壓縮此檔案,可以看到建立的到建立的docsdocs子資料夾。子資料夾。1-3-

31、4 安裝JDK說明文件-圖例1-3-5 程式編輯與開發工具-說明Java語言的程式碼檔案是一個ANSI標準的文字檔案,可以使用任何文字編輯器,例如:Windows記事本和WordPad等進行程式碼的編輯。Gel是原生Windows介面使用Delphi開發的Java IDE,而不是使用Java語言,所以尺寸非常小、佔用記憶體少且執行速度快。Gel擁有強大功能,提供中文使用介面、語法標示、程式碼自動完成、參數提示和專案管理功能,其下載網址:http:/ 程式編輯與開發工具-圖例1-4 建立Java主控台應用程式1-4-1 第一個Java程式1-4-2 Java程式編譯和執行時的錯誤訊息1-4 建立

32、Java主控台應用程式在安裝在安裝JDKJDK和設定好執行環境後,我們就可以在和設定好執行環境後,我們就可以在WindowsWindows作業系統的命令提示字元視窗開發作業系統的命令提示字元視窗開發JavaJava主控台應用程式(主控台應用程式(Console ApplicationConsole Application)。)。其基本程式開發步驟,如下所示:其基本程式開發步驟,如下所示:n nStep 1Step 1:使用記事本或編輯工具建立:使用記事本或編輯工具建立JavaJava原始程式碼原始程式碼檔案,副檔名為檔案,副檔名為.java.java。n nStep 2Step 2:使用檔名:

33、使用檔名javac.exejavac.exe的的JavaJava編譯程式,將原始編譯程式,將原始程式檔案編譯成程式檔案編譯成BytecodeBytecode的類別檔案,副檔名為的類別檔案,副檔名為.class.class。n nStep 3Step 3:使用:使用JVMJVM直譯程式直譯程式java.exejava.exe執行類別檔案,也執行類別檔案,也就是就是JavaJava程式。程式。1-4-1 第一個Java程式-步驟一步驟一:編輯步驟一:編輯JavaJava原始碼原始碼請啟動記事本輸入下列程式碼,如下所示:請啟動記事本輸入下列程式碼,如下所示:01: /* 01: /* 程式範例程式範

34、例: Ch1_4_1.java */: Ch1_4_1.java */02: / 02: / 主類別主類別03: public class Ch1_4_103: public class Ch1_4_104: / 04: / 主程式主程式05: public static void 05: public static void main(Stringmain(String argsargs) )06: / 06: / 顯示訊息顯示訊息07: 07: System.out.printlnSystem.out.println( (第一個第一個JavaJava應用程式應用程式););08: 08:

35、09: 09: 1-4-1 第一個Java程式-步驟二步驟二:編譯Java程式請輸入下列指令編譯請輸入下列指令編譯JavaJava程式程式Ch1_4_1.javaCh1_4_1.java ,如,如下所示:下所示:D:JavaCh01D:JavaCh01javacjavac Ch1_4_1.java Ch1_4_1.java EnterEnter編譯的類別檔編譯的類別檔1-4-1 第一個Java程式-步驟三步驟三:執行Java程式當當JavaJava程式檔案編譯成程式檔案編譯成Ch1_4_1.classCh1_4_1.class類別檔案類別檔案後,就可以輸入下列指令執行後,就可以輸入下列指令執行

36、JavaJava程式(請注意!程式(請注意!不需要輸入不需要輸入.class.class副檔名),如下所示:副檔名),如下所示:D:JavaCh01java Ch1_4_1 D:JavaCh01java Ch1_4_1 EnterEnter1-4-1 第一個Java程式-DOS指令命令列的相關指令和參數說明,如下表所示:1-4-2 Java程式編譯和執行時的錯誤訊息-圖例若Java程式在編譯時有錯誤產生,例如:Ch1_4_2.java是一個內含錯誤的Java程式檔案,其編譯過程如下圖所示:1-4-2 Java程式編譯和執行時的錯誤訊息-圖例說明圖例的下方顯示錯誤訊息1 error表示發現一個程

37、式錯誤,其相關訊息的說明,如下所示:n nCh1_4_2.javaCh1_4_2.java:指出錯誤是在:指出錯誤是在Ch1_4_2.javaCh1_4_2.java程程式檔案的第式檔案的第7 7列,最後是錯誤說明列,最後是錯誤說明cannot find cannot find symbolsymbol,表示發現無法理解的符號。,表示發現無法理解的符號。n nsymbolsymbol:指出錯誤的符號是什麼,以此例是:指出錯誤的符號是什麼,以此例是printerprinter方法。方法。n nlocationlocation:指出錯誤產生的位置,使用:指出錯誤產生的位置,使用 符符號指出錯誤的地

38、方,原來是將號指出錯誤的地方,原來是將printlnprintln拼錯成拼錯成printerprinter。1-4-2 Java程式編譯和執行時的錯誤訊息-常見錯誤訊息Bad command or file nameBad command or file namen n訊息指出訊息指出WindowsWindows找不到找不到JavaJava的編譯程式的編譯程式javac.exejavac.exe或或直譯程式直譯程式java.exejava.exe,請再次檢查,請再次檢查JDKJDK的環境設定。的環境設定。error: cannot read: Ch1_4_3.javaerror: cannot

39、 read: Ch1_4_3.javan n訊息指出編譯程式訊息指出編譯程式javac.exejavac.exe找不到找不到JavaJava程式檔案,請程式檔案,請確認程式檔案存在且確認程式檔案存在且JavaJava程式的副檔名是程式的副檔名是.java.java,以此,以此例在例在D:Java2Ch01D:Java2Ch01資料夾根本沒有名為資料夾根本沒有名為Ch1_4_3.javaCh1_4_3.java程式檔案。程式檔案。Exception in thread main Exception in thread main java.lang.NoClassDefFoundErrorjava

40、.lang.NoClassDefFoundError: Ch1_4_1/java: Ch1_4_1/javan n訊息指出直譯程式訊息指出直譯程式java.exejava.exe找不到指定的找不到指定的BytecodeBytecode類別類別檔案。檔案。1-5 Gel整合開發工具的使用1-5-1 第二個Java程式1-5-2 編譯和執行存在的Java程式檔案1-5 Gel整合開發工具的使用在安裝好在安裝好GelGel整合開發環境後,整合開發環境後,GelGel提供提供JavaJava檔案檔案或專案方式開發或專案方式開發JavaJava應用程式,在本書主要是使應用程式,在本書主要是使用用Java

41、Java檔案方式,其基本程式開發步驟,如下所檔案方式,其基本程式開發步驟,如下所示:示:n nStep 1Step 1:按二下桌面捷徑:按二下桌面捷徑【GelGel】啟動啟動GelGel,新增,新增JavaJava原始碼檔案。原始碼檔案。n nStep 2Step 2:輸入程式碼,建立和儲存原始程式碼檔案,副:輸入程式碼,建立和儲存原始程式碼檔案,副檔名為檔名為.java.java。n nStep 3Step 3:執行建造:執行建造編譯檔案指令編譯編譯檔案指令編譯JavaJava程式。程式。n nStep 4Step 4:執行建造:執行建造執行檔案指令執行執行檔案指令執行JavaJava程式。

42、程式。1-5-1 第二個Java程式-步驟一步驟一:建立Java程式檔案GelGel是一套整合開發環境,只需啟動是一套整合開發環境,只需啟動GelGel就可以編就可以編輯、編譯和執行輯、編譯和執行JavaJava應用程式。應用程式。1-5-1 第二個Java程式-步驟二(程式碼)步驟二:編輯和儲存程式碼01: /* 01: /* 程式範例程式範例: Ch1_5_1.java */: Ch1_5_1.java */02: / 02: / 主類別主類別03: public class Ch1_5_103: public class Ch1_5_104: / 04: / 主程式主程式05: publ

43、ic static void 05: public static void main(Stringmain(String argsargs) )06: / 06: / 顯示三角形顯示三角形07: 07: System.out.printlnSystem.out.println(*);(*);08: 08: System.out.printlnSystem.out.println(*);(*);09: 09: System.out.printlnSystem.out.println(*);(*);10: 10: 11: 11: 1-5-1 第二個Java程式-步驟二(圖例)1-5-1 第二個Ja

44、va程式-步驟三(說明)步驟三:編譯Java程式在建立和儲存在建立和儲存JavaJava程式檔案後,程式檔案後,GelGel可以馬上進行可以馬上進行編譯編譯。請執行建造請執行建造編譯檔案指令,稍等一下,編譯檔案指令,稍等一下,可以在下方看到編譯結果的主控台視窗。可以在下方看到編譯結果的主控台視窗。1-5-1 第二個Java程式-步驟三(圖例)編譯完成編譯完成1-5-1 第二個Java程式-步驟四步驟四:執行Java程式當當JavaJava程式編譯成功,預設在同一個目錄建立程式編譯成功,預設在同一個目錄建立.class.class類別檔,同樣的,我們可以直接在類別檔,同樣的,我們可以直接在Gel

45、Gel執行執行JavaJava程式。程式。請執行建造請執行建造執行檔案指令,就可以在執行檔案指令,就可以在下方主控台視窗顯示下方主控台視窗顯示JavaJava程式的執行結果,程式的執行結果,如下圖所示:如下圖所示:1-5-2 編譯和執行存在的Java程式檔案Gel如果已經開啟程式檔案也沒有關係,Gel可以同時開啟多個的程式檔案。開啟兩個檔案開啟兩個檔案1-6 Java程式架構與寫作風格1-6-1 Java程式架構1-6-2 主控台的基本輸出1-6-3 程式敘述1-6-4 程式區塊1-6-5 程式註解1-6-6 太長的程式碼1-6-7 程式碼縮排1-6 Java程式架構與寫作風格Java程式架構

46、與傳統程式語言C/C+或BASIC有些不同,因為Java是一種真正的物件導向程式語言,所以,Java程式架構就是一個類別(Class)宣告。Java語言的寫作風格是撰寫Java程式碼的規則,因為良好撰寫風格,可以讓程式更容易了解和維護。例如:程式碼縮排可以反應程式碼的邏輯和迴圈架構,註解文字讓程式更容易明白。1-6-1 Java程式架構-說明Java程式架構是一個類別(Class)宣告,在類別宣告中的Java程式碼是由程式敘述所組成,數個程式敘述組成程式區塊,每一個區塊擁有數列程式敘述或註解文字,一列程式敘述是一個運算式、變數和關鍵字組成的程式碼。1-6-1 Java程式架構-範例例如:Ch1

47、_4_1.java,如下所示:01: /* 01: /* 程式範例程式範例: Ch1_4_1.java */: Ch1_4_1.java */02: / 02: / 主類別主類別03: public class Ch1_4_103: public class Ch1_4_104: / 04: / 主程式主程式05: public static void 05: public static void main(Stringmain(String argsargs) )06: / 06: / 顯示訊息顯示訊息07: 07: System.out.printlnSystem.out.println(

48、 (第一個第一個JavaJava應用程式應用程式););08: 08: 09: 09: 1-6-1 Java程式架構-架構說明1程式註解第12列是程式註解,詳細的註解說明請參閱第1-6-4節,如下所示:01: /* 程式範例: Ch1_4_1.java */02: / 主類別1-6-1 Java程式架構-架構說明2類別宣告在第在第3939列是和檔案名稱列是和檔案名稱Ch1_4_1Ch1_4_1同名的類別宣同名的類別宣告,如下所示:告,如下所示:03: public class Ch1_4_103: public class Ch1_4_104: / 04: / 主程式主程式05: public

49、 static void 05: public static void main(Stringmain(String argsargs) )06: / 06: / 顯示訊息顯示訊息07: 07: System.out.printlnSystem.out.println( (第一個第一個JavaJava應用程式應用程式););08: 08: 09: 09: 請注意!檔案名稱需要和宣告成請注意!檔案名稱需要和宣告成publicpublic類別的名稱類別的名稱相同,而且英文字母大小寫也需相同。相同,而且英文字母大小寫也需相同。1-6-1 Java程式架構-架構說明3主程式第第5858列的列的main

50、()main()方法是方法是JavaJava程式的主程式,它是程式的主程式,它是JavaJava應用程式執行時的進入點,執行應用程式執行時的進入點,執行JavaJava程式就程式就是從此方法的程式碼開始,如下所示:是從此方法的程式碼開始,如下所示:05: public static void 05: public static void main(Stringmain(String argsargs) )06: / 06: / 顯示訊息顯示訊息07: 07: System.out.printlnSystem.out.println( (第一個第一個JavaJava應用程式應用程式););08:

51、 08: 上述上述main()main()方法宣告成方法宣告成publicpublic、staticstatic和和voidvoid,表示,表示是公開、靜態類別和沒有傳回值的方法。是公開、靜態類別和沒有傳回值的方法。1-6-2 主控台的基本輸出主控台應用程式是在命令提示字元輸入和輸出的主控台應用程式是在命令提示字元輸入和輸出的文字內容,我們可以使用文字內容,我們可以使用System.outSystem.out物件的物件的print()print()或或printlnprintln() ()方法將文字內容輸出至主控台方法將文字內容輸出至主控台(ConsoleConsole)來顯示。)來顯示。在之

52、後的幾個章節,我們將使用這兩個方法來輸在之後的幾個章節,我們將使用這兩個方法來輸出執行結果,如下所示:出執行結果,如下所示:System.out.printlnSystem.out.println( (第一個第一個JavaJava應用程式應用程式););上述程式碼的上述程式碼的printlnprintln() ()方法可以將括號內的參數字方法可以將括號內的參數字串輸出到螢幕顯示且換行,字串是使用串輸出到螢幕顯示且換行,字串是使用 號括號括起一組字元集合。如果不換行就是使用起一組字元集合。如果不換行就是使用print()print()方法,方法,如下所示:如下所示:System.out.prin

53、tSystem.out.print( (第一個第一個JavaJava應用程式應用程式););1-6-3 程式敘述-說明Java程式碼是由程式敘述(Statements)組成,數個程式敘述組合成程式區塊,每一個區塊擁有數列程式敘述或註解文字,一列程式敘述是一個運算式、變數和關鍵字(Keywords)組成的程式碼,如下所示:intint balance = 1000; balance = 1000;interest = balance * rate;interest = balance * rate;System.out.printlnSystem.out.println( (第一個第一個Java

54、Java應用程式應用程式););1-6-3 程式敘述-;程式敘述結束符號Java的;符號代表程式敘述的結束,這是告訴編譯程式已經到達程式敘述的最後,換句話說,使用;符號就可以在同一列程式碼撰寫多個程式敘述,如下所示:balance=10000; rate=0.04; interest=balance * rate;balance=10000; rate=0.04; interest=balance * rate;上述程式碼在同一列Java程式碼列擁有3個程式敘述。1-6-4 程式區塊程式區塊(程式區塊(BlockBlock)是由多個程式敘述組成,使用)是由多個程式敘述組成,使用 和和 符號包圍

55、,如下所示:符號包圍,如下所示:public static void public static void main(Stringmain(String argsargs) ) / / 顯示訊息顯示訊息 System.out.printlnSystem.out.println( (第一個第一個JavaJava應用程式應用程式);); JavaJava語言屬於一種自由格式(語言屬於一種自由格式(Free-formatFree-format)的程式語言,我們可以將多個程式敘述寫在同一的程式語言,我們可以將多個程式敘述寫在同一列,甚至可以將整個程式區塊置於同一列,程式列,甚至可以將整個程式區塊置於同

56、一列,程式設計者可以自由編排程式碼,如下所示:設計者可以自由編排程式碼,如下所示:public static void public static void main(Stringmain(String argsargs) ) 1-6-5 程式註解程式註解是程式的重要部分,因為良好的註解文程式註解是程式的重要部分,因為良好的註解文字不但能夠了解程式的目的,並且在程式維護上,字不但能夠了解程式的目的,並且在程式維護上,也可以提供更多的資訊。也可以提供更多的資訊。JavaJava語言的程式註解是以語言的程式註解是以” ”/”/”符號開始的列,或符號開始的列,或放在程式列後的文字內容,如下所示:放在

57、程式列後的文字內容,如下所示:/ / 顯示訊息顯示訊息System.out.printlnSystem.out.println( (第一個第一個JavaJava應用程式應用程式); / ); / 顯示訊息顯示訊息如果註解文字不只一列,可以使用如果註解文字不只一列,可以使用” ”/*”/*”和和”* ”*/” /”符號標示註解文字,如下所示:符號標示註解文字,如下所示:/* /* 程式範例程式範例: Ch1_4_1.java */: Ch1_4_1.java */1-6-6 太長的程式碼在在JavaJava程式中如果同一列的程式碼太長,基於程程式中如果同一列的程式碼太長,基於程式編排的需求,可以

58、將它分成式編排的需求,可以將它分成2 2列來編排。因為列來編排。因為JavaJava語言屬於自由格式的程式語言,並不需要使語言屬於自由格式的程式語言,並不需要使用任何符號,直接分成兩列即可,如下所示:用任何符號,直接分成兩列即可,如下所示:System.out.printlnSystem.out.println ( (第一個第一個JavaJava應用程式應用程式););不過分割程式碼時,需要以完整程式元素來分割,不過分割程式碼時,需要以完整程式元素來分割,例如:關鍵字、完整字串或運算子,請注意!不例如:關鍵字、完整字串或運算子,請注意!不可以將一個字串直接分成可以將一個字串直接分成2 2列。列。1-6-7 程式碼縮排在撰寫程式時記得使用縮排編排程式碼,適當的縮排程式碼,可以讓程式更加容易閱讀,因為可以反應出程式碼的邏輯和迴圈架構,例如:迴圈區塊的程式碼縮幾格編排,如下所示:for ( i = 0; i = 10; i+ )for ( i = 0; i = 10; i+ ) System.out.println(iSystem.out.println(i); ); total = total = totaltotal + i; + i;

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 资格认证/考试 > 自考

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号