書名:?Java程序設(shè)計(jì)實(shí)用教程(第三版) 課后習(xí)題解析
作者:?葉核亞 編
出版社:?電子工業(yè)出版社
1.Java具有那些適合在Internet環(huán)境中的特點(diǎn)?
【答】簡單性和完全面向?qū)ο?,平臺無關(guān)性,安全性和可靠性,多線程,高效的網(wǎng)絡(luò)編程。
?
2.Java保留、放棄了C/C++語言中哪些語法和面向?qū)ο髾C(jī)制?為什么需要這樣做?
【答】?在語法規(guī)則方面,Java語言放棄了全程變量、goto語句、宏定義、全局函數(shù)以及結(jié)構(gòu)、聯(lián)合和指針數(shù)據(jù)類型,使Java語言更簡單、更精練。
在面向?qū)ο蟾拍罘矫妫?/span>Java語言放棄了多元繼承、友元類和運(yùn)算符重載,采用“單重繼承+接口”的方式代替多重繼承,提供語言級的內(nèi)存自動管理和異常處理方式,使Java語言更健壯、更安全、更高效。
?
3.Java對原程序文件的命名規(guī)則有什么要求?源程序文件編譯后生成什么文件?
【答】?要求:源程序文件與類同名,文件擴(kuò)展名為.java;編譯后生成字節(jié)碼文件(*.class)。
?
4.Java程序的運(yùn)行機(jī)制是怎樣的?與C++或其他語言有什么不同?
【答】Java的每一個(gè)類都有一個(gè)class文件和它對應(yīng),Java在程序的啟動的時(shí)候?qū)⒊绦蜻\(yùn)行需要用到的類加載到虛擬機(jī)中,根據(jù)Java的虛擬機(jī)規(guī)范進(jìn)行連接(動態(tài)連接),程序的組裝是在運(yùn)行的時(shí)候完成的
?C++和其他的編譯型的語言一樣,它的程序的組裝方式是一種傳統(tǒng)的組裝方式。C++在編譯的時(shí)候生成適用于某一平臺的二進(jìn)制代碼,在連接的時(shí)候找到需要調(diào)用的庫,然后將這些庫中的代碼連接進(jìn)可執(zhí)行程序之中,生成的可執(zhí)行程序運(yùn)行速度非常的快,但是可執(zhí)行代碼已經(jīng)變成了一個(gè)整體,不可能再分開
?
5.什么是平臺無關(guān)性?Java是怎樣實(shí)現(xiàn)平臺無關(guān)性的?
【答】平臺無關(guān)性即Java程序的運(yùn)行不依賴于操作系統(tǒng)。Java采用虛擬機(jī)技術(shù)實(shí)現(xiàn)平臺無關(guān)性。程序由虛擬機(jī)解釋執(zhí)行,不同的操作系統(tǒng)上運(yùn)行不同版本的Java虛擬機(jī)。
?
6.Java應(yīng)用程序由哪兩種形式?他們的運(yùn)行方式有什么不同?
【答】Application和applet兩種形式,其中application是能夠獨(dú)立運(yùn)行的應(yīng)用程序,既可以以DOS的命令方式運(yùn)行,也可以以圖形用戶界面方式運(yùn)行。Applet是可以嵌入頁面的最小應(yīng)用程序,不能獨(dú)立運(yùn)行,必須嵌入超文本中,由瀏覽器?顯示運(yùn)行。
?
7.什么是解釋執(zhí)行?Java怎樣解釋執(zhí)行兩種應(yīng)用程序?
【答】解釋執(zhí)行即將字節(jié)碼解釋成本地機(jī)器碼并執(zhí)行。
?Java源程序文件經(jīng)編譯后生成字節(jié)碼文件,若是application應(yīng)用程序,則將字節(jié)碼文件交由Java解釋器解釋執(zhí)行,最后在windows操作系統(tǒng)上運(yùn)行。若是applet應(yīng)用程序,則將字節(jié)碼文件嵌入超文本文件并下載到web瀏覽器上,最后由windows操作系統(tǒng)中的Java虛擬機(jī)運(yùn)行。
?
8.作為一個(gè)軟件開發(fā)人員,應(yīng)該具備那些基礎(chǔ)知識用以開發(fā)windows應(yīng)用程序?
【答】請思考作答。
?