《Java語言程序設(shè)計與實現(xiàn)(第一版)》課后習(xí)題答案匯總 (張桓)項目1-14_第1頁
《Java語言程序設(shè)計與實現(xiàn)(第一版)》課后習(xí)題答案匯總 (張桓)項目1-14_第2頁
《Java語言程序設(shè)計與實現(xiàn)(第一版)》課后習(xí)題答案匯總 (張桓)項目1-14_第3頁
《Java語言程序設(shè)計與實現(xiàn)(第一版)》課后習(xí)題答案匯總 (張桓)項目1-14_第4頁
《Java語言程序設(shè)計與實現(xiàn)(第一版)》課后習(xí)題答案匯總 (張桓)項目1-14_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

項目一Java語言概述

課后習(xí)題答案

一、填空題:

(DCC++

(2)J2SE

(3)多線程

二、選擇題:

(1)D;(2)C;(3)D;

三、簡答題:

(1)簡述面向?qū)ο缶幊痰?個原則。

答:所有面向?qū)ο蟮木幊陶Z言都提供幫助你實現(xiàn)面向?qū)ο竽P偷臋C制,這些機制是封裝,

繼承及多態(tài)性。

1.封裝

封裝(Encapsulation)是將代碼及其處理的數(shù)據(jù)綁定在一起的一種編程機制,該機制

保證了程序和數(shù)據(jù)都不受外部干擾且不被誤用。

2.繼承

繼承(Inheritance)是一個對象獲得另一個對象的屬性的過程。

繼承性與封裝性相互作用。如果一個給定的類封裝了一些屬性,那么它的任何子類將具

有同樣的屬性,而且還添加了子類自己特有的屬性。這是面向?qū)ο蟮某绦蛟趶?fù)雜性上呈線性

而非幾何性增長的一個關(guān)鍵概念。新的子類繼承它的所有祖先的所有屬性。它不與系統(tǒng)中

其余的多數(shù)代碼產(chǎn)生無法預(yù)料的相互作用。

3.多態(tài)性

多態(tài)性是允許一個接口被多個同類動作使用的特性,具體使用哪個動作與應(yīng)用場合有

關(guān)。多態(tài)性的概念經(jīng)常被說成是“一個接口,多種方法”。這意味著可以為一組相關(guān)的動作

設(shè)計一個通用的接口。多態(tài)性允許一個接口被同類的多個動作使用,這樣就降低了程序的復(fù)

雜性。選擇應(yīng)用于每一種情形的特定的動作(specificaction)(即方法)是編譯器的任務(wù),

程序員無需手工選擇。只需記住并使用通用接口即可。

(2)簡述Java的三大開發(fā)體系。

答:簡單地說,J2SE用于小型程序,J2EE用于大型程序,J2ME用于手機等程序。J2SE

包含于J2EE中,J2ME包含了J2SE的核心類,但新添加了一些專用類。語言都是相同的,只

是捆綁的類庫API不同。也就是,J2SE是基礎(chǔ);壓縮一點,再增加一些CLDC等方面的特性

就是J2ME;擴充一點,再增加一些EJB等企業(yè)應(yīng)用方面的特性就是J2EE。

項目二Java程序設(shè)計初識

課后習(xí)題答案

一、選擇題:

(1)Java包引入部分;類定義部分

(2)java;class

二、選擇題:

(1)A;(2)A;(3)B;(4)C

三、判斷題:

(1)錯誤;(2)正確;

四、簡答題:

(1)簡述JDK的編譯和運行所使用的基本命令。

答:編譯可以使用JDK中的工具javac.exe。例如:javacHelloWorldApp.java

運行Java程序則可以使用JDK提供的解釋器是java.exe。例如:javaHelloWorldApp

(2)常用的集成開發(fā)工具有哪些?各有什么特點?

答:參見教材任務(wù)二。

(3)GUI編程的主要特征是什么?

答:

程序界面主要由圖形化的要素(如窗體、對話框、命令按鈕等)構(gòu)成

程序沒有預(yù)定好的運行流程,而是由隨機事件來驅(qū)動

人機交互由消息機制來支持

輸入設(shè)備以鼠標(biāo)、鍵盤為主

五、操作題:

(1)答:參見教材任務(wù)一。

(2)答:參見教材任務(wù)二。

六、編程題:

(1)編寫一個Java應(yīng)用程序,在屏幕上輸出"WelcometoJavaWorld!利用JDK環(huán)境和

記事本工具完成編寫、編譯并運行這個程序。

答:參見配套習(xí)題程序答案部分。

(2)編寫一個Java控制臺應(yīng)用程序,能夠從鍵盤上接收兩個數(shù)字,然后計算這兩個數(shù)的積。

答:參見配套習(xí)題程序答案部分。

(3)編寫一個Java圖形界面應(yīng)用程序,從對話框中接收兩個數(shù)字,然后計算這兩個數(shù)的商。

答:參見配套習(xí)題程序答案部分。

項目三Java語法基礎(chǔ)

課后習(xí)題答案

一、選擇題:

(1)C;(2)D;(3)C;(4)D;(5)D;(6)D;(7)D;(8)A;(9)A;(10)D;

二、分析程序,寫出運行結(jié)果:

(1)876

(2)23

22

21

(3)6

(4)a=8b=22

三、編程題:

(1)由鍵盤輸入4個整數(shù),輸出其中最大的數(shù)。

答:參見配套習(xí)題程序答案部分。

(2)輸入一個5位整數(shù),將它反向輸出。如輸入12345,輸出54321。

答:參見配套習(xí)題程序答案部分。

(3)編寫程序,判斷某一年是否是閏年。

答:參見配套習(xí)題程序答案部分。

(4)把100-200之間的不能被5整除的數(shù)輸出。

答:參見配套習(xí)題程序答案部分。

項目四數(shù)組

課后習(xí)題答案

一、選擇題:

(1)C;(2)C;(3)B;(4)C;(5)A;(6)A;

二、填空題:

(1)String,StringBuffer

(2)6,5

三、編程題:

(1)將一個數(shù)組中的元素按逆序輸出。

答:參見配套習(xí)題程序答案部分。

(2)求一個整型數(shù)組的元素之和及平均值。

答:參見配套習(xí)題程序答案部分。

項目五面向?qū)ο蟮某绦蛟O(shè)計基礎(chǔ)

課后習(xí)題答案

一、選擇題:

(1)A;(2)B:(3)B:(4)C;(5)B;

二、填空題:

(1)類

(2)new

(3)Object

(4)構(gòu)造方法

(5)protected,缺省,private

(6)abs,sqrt,pow

二、編程題:

(1)答:參見配套習(xí)題程序答案部分。

(2)答:參見配套習(xí)題程序答案部分。

項目六類的繼承、包及接口

課后習(xí)題答案

一、選擇題:

(1)B;(2)C;(3)A;(4)D;(5)D;(6)B;(7)A;(8)C;(9)B;(10)A

二、填空題:

(1)super

(2)常量

(3)參數(shù)個數(shù)

(4)package

(5)變量隱藏,方法覆蓋,方法重載

(6)最終類,最終方法,常量

(7)protected,缺省,public,private

(8)public,protected,缺省,private

三、分析下面的程序,寫出運行結(jié)果

(1)Aclass

Bclass

(2)30

(3)Whatapleasure!

IamTom

Howdoyoudo?

四、編程題:

(1)答:參見配套習(xí)題程序答案部分。

(2)答:參見配套習(xí)題程序答案部分。

(3)答:參見配套習(xí)題程序答案部分。

(4)答:參見配套習(xí)題程序答案部分。

項目七程序的異常處理

習(xí)題

一、選擇題:

(1)C;(2)A;(3)C;(4)C;(5)B;(6)C

二、填空題:

(1)finally

(2)Error

(3)運行

(4)throws

(5)Error

(6)finally

三、判斷題:

(1)V

(2)J

(3)X

(4)X

(5)V

四、編程題:

答:參見配套習(xí)題程序答案部分。

項目八Java的圖形用戶界面開發(fā)

課后習(xí)題答案

1、選擇題:

(1)A;(2)A;(3)B;(4)C;(5)A;(6)A;(7)B;(8)C;(9)D;(10)A

2、填空題:

(1)BorderLayout;

(2)Swing;

(3)setBounds();

(4)GridLayout;

(5)BorderLayout;

(6)列表框;

(7)父類;

(8)setFont();

(9)布局管理器:

(10)Graphics

3、簡答題:

(1)Java語言是跨平臺的編程語言,那么圖形用戶界面如何做到跨平臺?

答:為了使我們生成的圖形用戶界面具有良好的平臺無關(guān)性,Java語言中,提供了布局

管理器這個工具來管理組件在容器中的布局,而不使用直接設(shè)置組件位置和大小的方式。

(2)什么是Swing?它和AWT比有什么優(yōu)點?使用上有什么區(qū)別?

答:Swing組件是Java語言提供的第二代GUI設(shè)計工具包,它以AWT為基礎(chǔ),在AWT

內(nèi)容的基礎(chǔ)上新增或改進了一些GUI組件,使得GUI程序功能更強大,設(shè)計更容易、更

方便。

Swing優(yōu)點:

<1>Swing是完全用Java語言編寫的,所以稱Swing組件是輕量級組件,沒有本地代

碼,不依賴操作系統(tǒng)的支持,比AWT構(gòu)件具有更強的實用性。Swing在不同的平臺表現(xiàn)一

致,并且有能力提供本地窗口系統(tǒng)不支持的其他特性。

<2>Swing采用了-—種MVC的設(shè)計范式,即“模型-視圖-控制"(Model-View-Controller),

其中:模型用來保存內(nèi)容;視圖用來顯示內(nèi)容;控制器用來控制用戶輸入。

<3>Swing的外觀感覺采用可插入的外觀感覺(PluggableLookandFeel,PL&F)。在

AWT構(gòu)件中,由于控制構(gòu)件外觀對等類與具體平臺相關(guān),使得AWT構(gòu)件總是只有與本機

相關(guān)的外觀;Swing可以使得Java程序在一個平臺上運行時能夠有不同的外觀,用戶可以

選擇自己習(xí)慣的外觀。

使用上區(qū)別:

Swing組件的名稱都以字母J開頭,例如,AWT的框架類、面板類、按鈕類和菜單類

被命名為Frame、Panel、Button和Menu,而Swing對應(yīng)的組件類被命名為JFrame、JPanek

JButton和JMenu。另外,AWT組件在java.awt包中,而Swing組件在javax.swing包中。

(3)Swing的組件層次結(jié)構(gòu)有什么特點?是如何實現(xiàn)的?

答:就類的層次結(jié)構(gòu)而言,Swing構(gòu)件都是AWT的Container類的直接子類和簡潔子類,

尤其是javax.swing.JComponent這個類,許多Swing構(gòu)件都是它的子類,而它本身又是

java.awt.Container類的子類。

在javax.swing包中,定義了兩種類型的構(gòu)件:頂層容器和輕量級構(gòu)件。

Swing的類層次結(jié)構(gòu)如圖

(4)Swing有哪些常用組件?怎么用?

答:參見教材任務(wù)四。

(5)Swing有幾種容器?其功能特性是什么?

答:參見教材任務(wù)二。

(6)Swing的布局管理器有哪些特點?

答:參見教材任務(wù)三?

4、編程題:

(1)答:參見配套習(xí)題程序答案部分。

(2)答:參見配套習(xí)題程序答案部分。

(3)答:參見配套習(xí)題程序答案部分。

(4)答:參見配套習(xí)題程序答案部分。

(5)答:參見配套習(xí)題程序答案部分。

項目九Java的事件處理機制

課后習(xí)題答案

1、選擇題:

(1)D;(2)B;(3)D;(4)B;(5)A;(6)A;(7)C;(8)D;(9)A

2、填空題:

(1)ActionListener;

(2)建立事件監(jiān)聽器;

(3)事件源;

(4)“模式”;

(5)MouseEvent;

(6)System.out.print(evt.getX());

3、簡答題:

(1)Java中事件處理涉及哪些方面?請具體說明。

答:事件處理涉及事件源、事件及事件偵聽器。事件源是與用戶交互的組件或組件所依

賴的數(shù)據(jù)模型;事件偵聽器是事件的處理者。一個偵聽器可以注冊到多個事件源,一個事件

源也可以注冊多個事件偵聽器。

(2)請說明事件接口的用途。

答:Java中為每類事件提供了相應(yīng)的事件接口。事件接口中規(guī)定了處理事件所需要實現(xiàn)

的方法。實現(xiàn)了某事件接口的類,就要具體實現(xiàn)該接口所規(guī)定的方法,并因此能夠處理事件。

(3)請說明適配器的用途。

答:在有的監(jiān)聽器中定義了五六個事件處理方法,例如MouseListener中

有mouseClicked、mouseEntered、mousePressed等幾個事件處理方法。如果你要通過事件

監(jiān)聽器來處理事件,那么你要繼承監(jiān)聽器接口類,實現(xiàn)你想要的那個事件處理方法,除此之

外,你還要編寫其他幾個方法的空方法體,這往往是個枯燥的工作。Java提供了適配器來替

你完成這一工作。一個適配器抽象類用空方法體實現(xiàn)了監(jiān)聽器接口類中的方法,這樣我們只

需要繼承這個適配器抽象類,然后覆寫某個我們需要進行響應(yīng)的事件方法即可。

4、編程題:

(1)答:參見配套習(xí)題程序答案部分。

(2)答:參見配套習(xí)題程序答案部分。

(3)答:參見配套習(xí)題程序答案部分。

(4)答:參見配套習(xí)題程序答案部分。

項目十Java的數(shù)據(jù)庫編程開發(fā)

課后習(xí)題答案

一、填空題:

(1)SQL

(2)行、列

(3)ResultSet

(4)主鍵

(5)WHERE

(6)JDBC-ODBC橋驅(qū)動、本地API驅(qū)動、網(wǎng)絡(luò)協(xié)議驅(qū)動、本地協(xié)議驅(qū)動

二、判斷題:

(1)正確;

(2)錯誤;

三、簡答題:

(1)簡述JDBC主要的功能。

答:JDBC是由一系列連接(Connection)、SQL語句(Statement)和結(jié)果集(ResultSet)構(gòu)成的,

其主要作用概括起來有3個方面:

(1)建立與數(shù)據(jù)庫的連接:

(2)向數(shù)據(jù)庫發(fā)起查詢請求;

(3)處理數(shù)據(jù)庫返回結(jié)果。

(2)JDBC的API包含哪些常用的類和接口?分別有什么作用?

答:JDBCAPI定義了一系列Java類,用來表示數(shù)據(jù)庫連接、SQL語句、結(jié)果集、數(shù)據(jù)庫元

數(shù)據(jù)等,重要的類及接口有:Driver接口、DriverManager接口、Connection接口、Statement

接口、PreparedStatement接口、DatabaseMetaData接口、ResultSet接口。

(3)應(yīng)用JDBC訪問數(shù)據(jù)庫需要哪些操作?

答:在使用JDBC時,主要包括以下幾個方面的操作:

?加載JDBC數(shù)據(jù)庫驅(qū)動;

?創(chuàng)建與數(shù)據(jù)庫的連接;

?執(zhí)行SQL語句:

?處理SQL語句返回的結(jié)果;

?斷開與數(shù)據(jù)庫的連接。

(4)JDBC訪問Access數(shù)據(jù)庫時,如何加載驅(qū)動?

答:首先,建立JDBC-ODBC橋連接:

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

其次,建立ODBC數(shù)據(jù)源(具體步驟見教材217-219頁)。

四、編程題:

答:參見配套習(xí)題程序答案部分。

課后練習(xí)

1.填空題

(1)字符輸出流類都是抽象類的子類。

(2)對Java對象進行讀、寫的過程被稱為o

(3)Fileinputstream類是類的子類,FileOutputStream類是類的子類。

(4)FileReader類是的子類,F(xiàn)ileWriter類是類的子類。

(5)Java語言中對文件進行隨機訪問是通過類來完成的。

2.選擇題

(1)下列選項屬于字符流的是(卜

A.ByteArrayOutputStream

B.DataOutputStream

C.InputStreamReader

D.Outputstream

(2)下列Inputstream類中()方法可以用于關(guān)閉流。

A.skip()B.close()

C.mark()D.reset()

(3)在程序讀入字符文件時,能夠以該文件作為直接參數(shù)的類是(卜

A.FileReaderB.BufferedReader

C.FileinputstreamD.Objectinputstream

(4)要從文件file.dat中讀出第10個字節(jié)到變量c中,下列方法()適合。

A.FilelnputStreamin=newFilelnputStreamftfile.daf,);in.skip(9);intc=in.read();

B.FilelnputStreamin=newFilelnputStreamfifile.daf,);in.skip(10);intc=in.read();

C.FilelnputStreamin=newFilelnputStreamCtfile.daf,);intc=in.read();

D.RandomAccessFilein=newRandomAccessFile(t4file.daf,);in.skip(9);intc=in.readByte();

3.判斷題

(1)gputStream類是一個具體的類,不需其他類繼承就可以直接使用。()

(2)File類的createNewFile方法既可以創(chuàng)建新文件,也可以用于創(chuàng)建文件夾。()

(3)FilelnputStream類是Inputstream類的子類。()

4.簡答題

(1)什么是數(shù)據(jù)流?什么是輸入/輸出流?

(2)什么是字節(jié)流和字符流?它們對應(yīng)的基礎(chǔ)抽象類分別是什么?

(3)簡述File類常用的方法有哪些。

(4)簡述文件的順序訪問與文件的隨機訪問。

5.編程題

(1)編寫程序獲取E盤下所有文件夾的名稱。

(2)編程:檢查C盤根目錄下的CONFIG.SYS文件是否存在,若存在則顯示其中的內(nèi)容。

(3)在E盤中新建文件file.txt用FileOutputStream類向文件中輸入若干文字并用FilelnputStream

類讀出寫入的內(nèi)容,將內(nèi)容顯示在控制臺上

項目HJava的文件操作

課后習(xí)題答案

一、填空題:

(1)Writer

(2)數(shù)據(jù)流

(3)InputStream>OutputStream

(4)Reader>Writer

(5)RandomAccessFile

二、選擇題:

(1)C;(2)B;(3)A;(4)A

三、判斷題:

(1)錯誤;(2)錯誤;(3)正確

四、簡答題:

(1)什么是數(shù)據(jù)流?什么是輸入/輸出流?

答:所謂的“數(shù)據(jù)流”是指所有數(shù)據(jù)通信通道中數(shù)據(jù)的起點和終點。

在程序中,輸入和輸出都是相對于當(dāng)前程序而言的,程序在使用時,一種角色是數(shù)據(jù)的

提供者,即數(shù)據(jù)源,另一種角色是數(shù)據(jù)的使用者,即數(shù)據(jù)的目的地。如果程序是數(shù)據(jù)的提供

者,它需要向外界提供數(shù)據(jù),這種流稱為“輸出流”.如果程序是數(shù)據(jù)的使用者,需要從外

界讀取數(shù)據(jù),這種流稱為“輸入流”。

(2)什么是字節(jié)流和字符流?它們對應(yīng)的基礎(chǔ)抽象類分別是什么?

答:在字節(jié)流中,數(shù)據(jù)序列以byte為單位,即流中的數(shù)據(jù)按照一個字節(jié)一個字節(jié)的順序形

成流,因此該類流操作的基本單位是一個字節(jié)。

在字符流中,數(shù)據(jù)序列以char為單位,即流中的數(shù)據(jù)按照一個字符的順序

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論