it计算机 2物件导向程式设计范例教本

上传人:繁星 文档编号:43681665 上传时间:2018-06-07 格式:DOC 页数:76 大小:724.50KB
返回 下载 相关 举报
it计算机 2物件导向程式设计范例教本_第1页
第1页 / 共76页
it计算机 2物件导向程式设计范例教本_第2页
第2页 / 共76页
it计算机 2物件导向程式设计范例教本_第3页
第3页 / 共76页
it计算机 2物件导向程式设计范例教本_第4页
第4页 / 共76页
it计算机 2物件导向程式设计范例教本_第5页
第5页 / 共76页
点击查看更多>>
资源描述

《it计算机 2物件导向程式设计范例教本》由会员分享,可在线阅读,更多相关《it计算机 2物件导向程式设计范例教本(76页珍藏版)》请在金锄头文库上搜索。

1、Java 2物件導向程式設計範例教本物件導向程式設計範例教本 習題解答習題解答 2004/09/30第1章1. 程式(Programs)是使用指定程式語言所撰寫沒有混淆文字、數字和鍵盤符號所組成的特殊符號,這些符號組合成指令和敘述,再進一步編寫成程式碼,程式碼可以告訴電腦解決指定問題的步驟。軟體(Softwares)是一種電腦執行的應用程式或作業系統,通常軟體是一個或多個程式的泛稱,或是一整套應用程式。2. 在程式語言的分類上,以發展的世代來分,如下表所示:世代程式語言第一世代機器語言(Machine Languages)第二世代組合語言(Assembly Languages)第三世代高階語言

2、(High Level Languages)第四世代應用程式產生的語言(Application-Generation Languages)或查詢語言(Query Languages)第五世代邏輯導向語言(Logic-Oriented Languages)低階語言(Low Level Languages)2 ASP 3.0網頁設計範例教本低階語言是一種偏向電腦容易了解的程式語言,屬於電腦看的懂的程式語言,執行效率高,但是使用者不易學習。高階語言(High Level Languages)高階語言是一種接近人類語言的程式語言,可以說是一種半英文(Half- english)的程式語言,因為電腦不能

3、馬上看的懂,需要進一步的翻譯,在轉換成機器語言後,因為轉換出來的程式碼通常比直接使用機器語言撰寫的冗長,所以效率較低,但是非常適合使用者學習。3. 編譯程式(Compilers)C/C+和Java等程式語言屬於編譯語言,編譯程式需要檢查完整個程式檔案的程式碼,在完全沒有錯誤的情況下,才會翻譯成機器語言的程式檔案,其主要的功能有兩項,如下所示:檢查程式的錯誤。將程式翻譯成機器語言的程式檔案。直譯程式(Interpreters)早期的BASIC語言(例如:BASICA、QuickBasic等)和目前網頁技術的腳本(Scripts)語言,例如:VBScript和JavaScript都屬於直譯語言,直

4、譯程式是一個指令一個動作,一列一列的執行程式碼,相對的其執行效率低,但是非常適合在系統開發階段的程式除錯。習題解答4. Java程式語言的平台(Platform)是一種結合硬體和軟體的執行環境,簡單的說,電腦程式是在平台上執行,因為Java屬於一種與硬體無關和跨平台的程式語言,所以Java平台是一種軟體平台,主要是由JVM和Java API兩個元件所組成。5. JVM、Java API6. Java編譯程式可以將Java原始程式碼編譯成位元組碼(Bytecode),這種程式碼是一種虛擬的機器語言,這台電腦稱為JVM(Java Virtual Machine),換句話說,在作業系統需要安裝JVM

5、的直譯程式,才能夠直譯和執行位元組碼,如下圖所示:上述圖例的Java原始程式碼(副檔名.java)在編譯成位元組碼(副檔名.class)後,就可以在Windows、UNIX或Machintosh的Mac OS作業系統上執行,只需作業系統安裝JVM直譯程式,同一個位元組碼檔案,可以跨平台在不同作業系統上正確的執行。4 ASP 3.0網頁設計範例教本7. 程式語言的開發環境(Development Environment)是一組工具程式用來建立、編譯和維護程式語言所建立的應用程式。目前高階程式語言大都擁有整合開發環境,稱為IDE(Integrated Development Environment

6、),在同一個應用程式就可以編輯、編譯、執行和除錯特定語言的應用程式。Sun ONE Studio:Sun昇陽公司的Java整合開發環境,它是以NetBeans應用程式平台為基礎建立的整合開發環境,其網址為:http:/ IDE:NetBeans是一個開放原始碼計劃,屬於一個全功能的Java整合開發環境,其網址為:http:/beans.org/。Borland JBuilder:Borland公司的Java整合開發環境,分成數個版本,Personal版可以免費下載,其網址:http:/。JCreator:Xinox軟體公司的JCreator整合開發環境,這是Windows作業系統使用C+語言所

7、開發的應用程式,其執行效率比上述Java語言建立的IDE環境佳,分為LE(Lite Edition)和Pro(Pro Edition)兩種版本,其中LE版是免費軟體,其網址:http:/。8. 參閱第1-4節。第2章習題解答1. 請參閱第2-1-1節。2. 證明、測試、除錯3. 在程式設計的設計階段寫出的解決問題步驟、策略或方法就是演算法(Algorithms),其基本定義如下:演算法是完成目標工作的一組指令,這組指令的步驟是有限的。除此之外,演 算法還必須滿足一些條件,如下所示: 輸入(Input):沒有或數個外界的輸入資料。 輸出(Output):至少有一個輸出結果。 明確性(Defini

8、teness):每一個指令步驟都十分明確,沒有模稜兩可。 有限性(Finiteness):這組指令一定會結束。 有效性(Effectiveness):每一個步驟都可行,可以追蹤其結果。根據上述演算法設計的程式一定會結束,但並非所有程式都滿足這項特性。例如:Windows作業系統除非系統當機,否則永遠執行一個等待的迴圈,等待使用者鍵盤輸入、移動滑鼠或按一下滑鼠按鍵。因為演算法只是將解決問題的步驟詳細的寫出來,所以並沒有固定方式,基本上只要能夠描述這組指令的執行過程即可,常用的方式如下所示:一般語言文字:直接使用文字描述來說明執行的步驟。虛擬碼(Pseudo Code):一種趨近程式語言的描述方法

9、,它並沒有固定語法,其每一列約可轉換成一列程式碼,如下所示:/* 計算1加到10 */ Let counter = 1 Let total = 0 while counter dir Entercd切換到同一磁碟的其它路徑C:cd Java2OOPCh02 Entercd 參數號切換到根目錄N/Acd .參數.號切換到上一層目錄N/Atype顯示參數的檔案內容C:type Ch2_2_1.java Entercls清除命令提示字元視窗的內容C:cls Enter6. main()方法、.java7. Java程式是由程式敘述所組成,一列程式敘述如同英文的一個句子,內含多個運算式、運算子或Jav

10、a關鍵字(詳見第3章),如下所示:int balance = 1000; interest = balance * rate; System.out.println(“第一個Java應用程式“);上述程式碼是Java程式敘述的範例。程式區塊是由多個程式敘述組成,使用和符號包圍,如下所示:8 ASP 3.0網頁設計範例教本public static void main(String args) / 顯示訊息System.out.println(“第一個Java應用程式“); 8. /*、*/ /9. 使用5個System.out.println()方法來顯示5行”*”字元10. 參閱2-3-2節

11、。第3章1. 位元組、82. 在Java程式需要替變數、類別和函數等很多元素命名,程式設計者在替這些元素命名時,需要遵循程式語言的語法,Java語言的命名語法,如下所示:名稱是一個合法的識別字(Identifier),識別字是使用英文字母開頭,不限長度的Unicode統一字碼字元的字串,包含字母、數字和底線_。例如:一些合法的名稱範例,如下所示:T, n, size, z100, long_name, helloWord名稱區分英文字母的大小寫,例如:hello、Hello和HELLO是不同的變數名稱。名稱不能使用Java語法的關鍵字(Keywords)、保留字的布林值true或false和n

12、ull,Java語言的關鍵字,都屬於程式指令,如下表所示:習題解答abstractbooleanbreakbytecasecatchcharclassconstcontinuedefaultdodoubleelseextendsfinalfinallyfloatforgotoifimplementsimportinstanceofintinterfacelongnativenewpackageprivateprotectedpublicreturnshortstaticstrictfpsuperswitchsynchronizedthisthrowthrowstransienttryvoidv

13、olatilewhile名稱在範圍(Scope)中必需是唯一,例如:在程式中可以使用相同的變數名稱,不過各變數名稱需要位在不同的範圍。3. 變數的目的是儲存程式執行中的一些暫存資料,程式設計者只需記住變數名稱,並且知道名稱表示一個記憶體位置中的資料,至於這個記憶體位置到底有那裡?並不用傷腦筋,因為這是編譯程式的工作,簡單的說,程式語言的變數是使用有意義的名稱代表數字的記憶體位址。變數的屬性10 ASP 3.0網頁設計範例教本程式的變數擁有一些屬性,這些屬性是用來描述變數的內含,如下表所示:屬性名稱說明名稱(Name)變數名稱,這是一個標籤,用來在程式中識別出它是一個變數位址(Address)在

14、記憶體中儲存此變數的記憶體位址尺寸(Size)變數所佔用的記憶體大小,以位元組為單位型態(Type)變數儲存資料的資料型態值(Value)變數值,也就是在記憶體位址中儲存的資料壽命(Lifetime) 在執行程式時,變數存在的期間,有些變數是在整個執行過程中都存在,有些變數是在執行期間自動或由程式碼建立範圍(Scope)在程式碼的那些程式敘述可以存取此變數在上表的變數壽命屬性是指執行程式時,變數實際配置記憶體空間的期間。變數範圍是指在原始程式碼中,有那些程式敘述能夠存取到此變數,而這些程式敘述稱之為變數範圍。變數宣告Java語言變數宣告的語法,如下所示:資料型態 變數名稱;習題解答上述宣告格式

15、使用資料型態開頭,後面跟著變數名稱,這列程式碼的目的是配置一個宣告的資料型態變數。4. team、I、j5. byte、short、int、long、float、double、char和boolean八種資料型態。6. 左值、位址、右值、值7. 運算子說明運算式範例+遞增運算a+ = 11i b) return a; else return b; 習題解答static int min(int a, int b) inf ( ab) return b;else return a; 8. static double square(double a) return a*a; static double cube(double a) return a*a*a; 9. num = 1; for ( a = 10; a = 1; a-) for ( b = 1; b 12. static double Exp(double x, int n) if ( n = 1 )return x;elsereturn x * Exp(x, n-1); 13. static int sum(int a) if ( n = 1 )return 1;elsereturn a + sum(a-1); 14. public static long gcd(long m, long n)

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 总结/报告

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