JAVA程序設計習題庫與答案_第1頁
JAVA程序設計習題庫與答案_第2頁
JAVA程序設計習題庫與答案_第3頁
JAVA程序設計習題庫與答案_第4頁
JAVA程序設計習題庫與答案_第5頁
已閱讀5頁,還剩63頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

★第一章Java語言概論

★第二章Java語言基礎

★第三章面向對象程序設計

★第四章Java小應用程序

★第五章異常處理

★第六章

圖形與用戶界面技術

★第七章多線程

★第八章多媒體編程

★第九章輸入與輸出流

★第十章網絡通訊與編程

★第十一章

Java語言的數據庫訪問技術

第一章

JAVA語言概論一、選擇題1.

下列不屬于java語言魯棒性特點的是:A.

java能檢查程序在變異和運行時的錯誤B.

java能運行虛擬機實現跨平臺C.

java自己操縱內存減少了內存出錯的可能性D.

java還實現了真數組,避免了覆蓋數據的可能2.

java語言的執行模式是:A.

全編譯型B.

全解釋型C.

半編譯和半解釋型D.

同腳本語言的解釋模式3.

下列關于虛擬機說法錯誤的是:A.

虛擬機可以用軟件實現B.

虛擬機部可以用硬件實現C.

字節碼是虛擬機的機器碼D.

虛擬機把代碼程序與各操作系統和硬件分開4.

java語言是1995年由()公司發布的A.

SunB.

MicrosoftC.

BorlandD.

FoxSoftware5.

下列不是虛擬機執行過程特點的是A.

雙線程B.

多線程C.

動態鏈接D.

異常處理6.

java以JVM為基礎,最下層是移植接口,由適配器和()組成A.

網卡B.

JavaosC.

Java基本類D.

Java應用程序和applet小程序7.

java程序的執行過程中用到一套JDK工具,其中javac.exe指A.

java語言編譯器B.

java字節碼解釋器C.

java文檔生成器D.

java類分解器8.

java的API結構中,不屬于類庫主要包括的核心包的是A.

java包B.

javaxC.

javadoc包D.

org擴展包9.

每個java的編譯單元可包含多個類或界面,但是每個編譯單元最多只能有()類或者界面是公共的A.

一個B.

兩個C.

四個D.

任意多個10.

在當前的java實現中,每個編譯單元就是一個以()為后綴的文件A.

javaB.

classC.

docD.

exe二、填空題1.

1991年,SUN公司的JameGosling和BillJoe等人,為電視、控制烤面包機等家用電器的交互操作開發了一個____軟件,它是java的前身。2.

java是一個網絡編程語言,簡單易學,利用了____的技術基礎,但又獨立于硬件結構,具有可移植性、健壯性、安全性、高性能。3.

java可以跨平臺的原因是____4.

JVM的執行過程有三個特點:多線程,_____,異常處理;5.

JAVA程序的安全性體現在多個層次上,在_____,有語法檢查;在解釋層上,有字節碼校驗器、測試代碼段格式和規則檢查,訪問權限和類型轉換和法性檢查,操作數堆棧的上溢或下溢,代碼參數類型合法性等;在平臺層上,通過配置策略,可設定訪問資源域,而無需區分本地或遠程。6.

JAVA的產品主流操作系統平臺是Solaris、_____和Macintosh.7.

JAVA系統運行時,通過______機制周期性的釋放無用對象所使用的內存,完成對象的清除。8.

在JAVA語言中,將后綴名為______的源代碼文件編譯后形成后綴名為.class的字節碼文件。9.

JAVA語言的執行模式是半編譯和______。10.

JAVA類庫具有_____的特點,保證了軟件的可移植性。11.

在編寫執行JAVA程序的過程中需要用到一些工具,SUN公司為我們提供了一套JDK工具,它主要包括:javac.exe、java.exe、_____、javap.exe、jkb.exe12.

JAVA程序包括源代碼(.java文件)、______、由歸檔工具jar生成的.jar文件、對象狀態序列化.ser文件。13.

在JAVA語言中,為將源代碼翻譯成______文件時產生的錯誤稱為編譯錯誤。而將程序在運行中產生的錯誤稱為運行錯誤。14.

JavaApplication應用程序的編寫和執行分3步進行:編寫源代碼、編譯源代碼、_____。15.

每個java應用程序可以包括許多方法,但必須有且只能有一個_____方法。16.

JAVA源文件中最多只能有一個_____類,其它類的個數不限。17.

JAVA的體系結構中,最下層是移植接口,上面一層是虛擬機,虛擬機的上層是_____和基本API,它們都是具有可擴展性。18.

類庫主要包括核心JAVA包、_____和org擴展包。19.

JAVA解釋器采用生成與體系結構無關的______指令的技術,只需安裝JAVA運行系統,就可保證JAVA程序可以在網絡的任何地方運行。20.

JAVA的體系結構中,最下層是_____,由適配器和JAVAOS組成,保證JAVA體系結構可以跨平臺。第二章

Java語言基礎一選擇題1.

下列java標識符,錯誤的是()_sys_varl$changeUser_name1_file下列不屬于簡單數據類型的是()整數類型類符點數類型布爾類型下列屬于JAVA關鍵詞的是()TRUEgotofloatNULL下列聲明和賦值語句錯誤的是doublew=3.1415;Stringstrl=”bye”;floatz=6.74567booleantruth=true;java中,八進制數以______開頭。0x00X08自定義類型轉換是由按優先關系從低級數據轉換為高級數據,優先次序為()char-int-long-float-doubleint-long-float-double-charlong-float-int-double-char以上都不對在java中,Integer.MAX_VALUE表示浮點類型最大值整數類型最大值長整型最大值以上說法都不對JAVA中,數據類型值中不可能出現的符號是()dfe/下列表示單引號的是()‘\\’\\\\’‘\\10.

下列語句片斷中,four得值為:()intthree=3;charone=‘1charfour=(char)(three+one);3131411.

下列不屬于整型變量的類型是byteshortfloatlong12.

int類型整型變量在內存中的位數為816326413.

下列數據類型轉換,必須進行強制類型轉換的是byte→intshort→longfloat→doubleint→char14.

java中,用()關鍵字定義常量final#definefloatconst15.

關于變量的作用范圍,下列說法錯誤的是異常處理參數作用域為整個類局部變量作用于聲明該變量的方法代碼段類變量作用于聲明該變量的類方法參數作用于傳遞到方法內代碼段16.

下列屬于條件運算符的是+?:&&>>

17.

下列程序test類中的變量c的最后結果為publicclasstest{

publicstaticvoidmain(Stringargs[])

{

inta=10;

intb;intc;if(a>50)

{

b=9;

}

c=b+a;

}

}10019編譯出錯18.

下列程序片斷的執行,說法正確的是publicclasstest{publicstaticvoidmain(Stringargs[])

byteb=100;

inti=b;

inta=2000;

b=a;

System.out.println(b);

}

}b的值為100b的值為2000第六行出錯第八行出錯19.

00101010(&)00010111語句的執行結果為0000001011111111001111111100000020.

已知i為整形變量,關于一元運算++i和i++,下列說法正確的是A.

++i運算將出錯B.

在任何情況下運行程序結果都一樣C.

在任何情況下運行程序結果都不一樣D.

在任何情況下變量i的值都增121.在java中語句:37.2%10的運算結果為A.

7.2B.

7C.

3D.

0.222.

在java語句中,運算符&&實現A.

邏輯或B.

邏輯與C.

邏輯非D.

邏輯相等23.

在java語句中,位運算操作數只能為整型或()數據A.

實型B.

字符型C.

布爾型D.

字符串型

00101010(|)00010111語句的執行結果為A.

00000000B.

11111111C.

00111111D.

1100000025.

~0010101語句的執行結果為A.

1101010B.

0010101C.

11111111D.

0000000026.

復合語句用()括起來的一段代碼。小括號()大括號{}中括號〔〕單引號‘’下列不屬于條件語句關鍵字的是ifelseswichwhile多分支語句switch(表達式){}中,表達式不可以返回哪種類型的值整型實型接口型字符型下面不屬于java條件分支語句結構的是if結構if-else結構if-elseif結構if-elseelse機構30.

下列方法method()執行,返回值為

intmethod(){

intnum=10;

if(num>20)

returnnum;

num=30;

}102030編譯出錯三元條件運算符ex1?ex2:ex3,相當于下面()語句。if(ex1)ex2;else

ex3;if(ex2)ex1;else

ex3;if(ex1)ex3;else

ex2;if(ex3)ex2;else

ex1;java用()來實現goto語句所特有的一些功能。breakdefaultcontinuereturn一個循環一般應包括哪幾部分內容初始化部分循環體部分迭代部分和終止部分以上都是34.

關于while和do-while循環,下列說法正確的是兩種循環除了格式不通外,功能完全相同與do-while語句不通的是,while語句的循環至少執行一次do-while語句首先計算終止條件,當條件滿足時,才去執行循環體中的語句以上都不對。35.

下列程序輸出結果為:

publicclasstest

{

publicstaticvoidmain(Stringargs[])

{

inta=0;

outer:

for(inti=0;i<2;i++)

{

for(intj=0;j<2;j++)

{

if(j>i)

{

continueouter;

}

a++;

}

}

System.out.println(a);

}

}023436.下列數組定義及賦值,錯誤的是A.

intintArray[];B.

intArray=newint[3];intArray[1]=1;intArray[2]=2;intArray[3]=3;C.

inta[]={1,2,3,4,5};D.

int[][]=newint[2][];a[0]=newint[3];a[1]=newint[3];37.在java中,字符串由java.lang.String和()定義E.

tringCharF.

G.

H.

二、填空題1.在java語言中,boolean型常量只有true和_____兩個值。2.標識符是以_____、下劃線、美元符號作為首字母的字符串序列。3.下面的語句是聲明一個變量并賦值:

booleanb1=5!=8;b1的值是______。4.在java程序中,用關鍵字_____修飾的常量對象創建后就不能再修改了。5.數據類型包括簡單數據類型和復合數據類型。復合數據類型又包括類、數組、______。6.八進制整數012表示十進制的_______。7.浮點型數據屬于實型數據,分為float和______兩種類型。8.類變量在類中聲明,而不是在類的某個方法中聲明,它的作用域是______.9.java語言中的各種數據類型之間提供自動轉換,如第1操作數是byte類型,第2操作數是float類型,其結果是_____類型。10.在java語言中,如果數值后沒有字母,計算機默認值為______類型。11.下面程序分別用while、do-while和for語句實現1~10累計求和。請在橫線處填入適當內容完成程序。PublicclassSum

{

publicstaticvoidmain(Stringargs[])

{

System.out.println(“\\n*****while循環*****”);

intn=10,sum=0;

while(_______)

{

sum+=n;

n--;

}System.out.println(“sumis”+sum);System.out.println(“\\n******do_while循環******”);n=0;sum=0;do

{

sum+=n;

n++;

}while(_______);

System.out.println(“sumis”+sum);

System.out.println(“\\n******for循環******”);

sum=0;

for(intI=1;_______i++)

{

sum+=I}System.out.println(“sumis”+sum);}}定義double型數組doubled1[]={1.2,2.3,3.4,4.5,5.6}則d1[2]=_______數組是有序數據的集合,數組中的每個元素具有相同的________14.下列程序輸出結果為_______publicclasstest{

publicstaticvoidmain(Stringargs[])

{Strings=”Iamastring!”;Intn=s.length();Charc=s.charAt(7);System.out.println(n);System.out.println(c);}

}

第三章面向對象程序設計一、選擇題2.

下列不屬于面向對象編程的三個特征的是A.

封裝B.

指針操作C.

多態性D.

繼承3.

類所實現的接口以及修飾不可以是A.

publicB.

abstractC.

finalD.

void4.

下列類的定義,錯誤的是A.

publicclasstestextendsObject{……

}B.

finalclassoperators{……}C.

classPoint{……

}D.

voidclassPoint{……

}5.

關鍵字supper的作用是A.

用來訪問父類被隱藏的成員變量B.

用來調用父類中被重載的方法C.

用來調用父類的構造函數D.

以上都是6.

下面程序定義了一個類,關于該類說法正確的是abstractclassabstractClass{……}A.

該類能調用newabstractClass(),方法實例化為一個對象B.

該類不能被繼承C.

該類的方法都不能被重載D.

以上說法都不對7.

關于對象的刪除,下列說法正確的是A.

必須由程序員完成對象的清除B.

java把沒有引用的對象作為垃圾收集起來并釋放C.

只有當程序中調用System.gc()方法時才能進行垃圾收集D.

java中的對象都很小,一般不進行刪除操作。8.

下列說法正確的是A.

java中包的主要作用是實現跨平臺功能B.

package語句只能放在import語句后面C.

包(package)由一組類(class)和界面(interface)組成D.

可以用#include關鍵詞來標明來自其它包中的類;9.

關于構造方法,下列說法錯誤的是A.

構造方法不可以進行方法重寫B.

構造方法用來初始化該類的一個新的對象C.

構造方法具有和類名相同的名稱D.

構造方法不返回任何數據類型10.

請將程序補充完整1._______classC2.{3.

abstractvoidcallme()4.

voidmetoo5.

{6.

System.out.println(“類C的metoo()方法”);7.

}8.

}9.

classD_______C10.

{11.

voidcallme()12.

{13.

System.out.println(“重載C類的callme()方法”);14.

}15.

}16.

publicclassAbstract17.

{18.

publicstaticvoidmain(Stringargs[])19.

}20.

Cc=__________D();21.

c.callme();22.

c.metoo();23.

}24.

}二、填空題1.

把對象實例化可以生成多個對象,使用_________運算符為對象分配內存空間。2.

java程序引入接口的概念,是為了彌補只允許類的________的缺憾。3.

java語言以_______為程序的基本單位,它是具有某些共同特性實體的集合,是一種抽象的概念。4.

抽象方法只能存在于抽象類中。抽象方法用關鍵字________來修飾。5.

java語言中_______是所有類的根.6.

在java中有一種叫做_______特殊方法,在程序中用它來對類成員進行初始化.7.

new是______對象的操作符.8.

繼承主要強調子類在父類的基礎上取”長”補”短”,而______主要強調的是類與類之間的傳輸9.

我們在java程序中,把關鍵字________加到方法名稱的前面,來實現子類調用父類的方法10.

定義一個類包括定義類頭和定義______兩個部分11.

在java程序里,同一類中重載的多個方法具有相同的方法名和_____的參數列表.重載的方法可以有不同的返回值類型12.

java是面向對象語言,對象是客觀事物的_______,對象與之是一一對應的,它是很具體的概念.13.

java語言通過接口支持______繼承,使類繼承具有更靈活的擴展性14.

一個對象的生命周期包含三個階段:生成,______和清除15.

java語言中,調用方法時,參數傳遞是______調用,而不是地址調用16.

接口是一種只含有抽象方法或______的一種特殊抽象類17.

創建一個類就是創建一個新的數據類型,而類在java中屬于______數據類型。18.

abstract方法________(不能或能)與final并列修飾同一個類19.

如果一個類中定義了幾個名為method的方法,這些方法的參數都是整數,則這些方法的________必須是不同的,這種現象稱為方法的重載。第四章Java小應用程序選擇題關于Applet運行過程,下列說法錯誤的是()瀏覽器家在指定URL中的HTML文件瀏覽器加密HTML文件瀏覽器加載HTML文件中指定的Applet類瀏覽器中的java運行環境運行該AppletApplet的生命周期是指()Applet下載到瀏覽器,到用戶連接到下一個頁面的過程()用戶一次提交或刷新頁面的全過程Applet下載到瀏覽器,到用戶退出瀏覽器的過程打開瀏覽器到關閉計算機的全過程Applet是一個面板容器,它默認使用()布局管理器BorderFlowGridCard與Applet生命周期有關的主要方法是()init()start()stop()以上都是關于Applet和Application,下列說法錯誤的是()Applet自身不能運行Applet可以嵌在Application中運行Application以main()方法為入口Applet可嵌在瀏覽器中運行在Applet中畫圖、畫圖像、顯示字符串用到的方法是()paint()init()stop()draw()Graphics類中提供的繪圖方法分為兩類:一類是繪制圖形,另一類是繪制()屏幕文本顏色圖像下列不屬于Applet編寫步驟的是()引入需要的包和類定義一個Applet類的子類實現Applet類的某些方法加密Applet程序要在一個單一的類文件中創建既可以用作JavaApplet,又可以用作Java應用程序的Java軟件代碼。下面說法錯誤的是()作為Application要定義main()方法,并且把main()方法所在的類定義為一個public類為使該程序成為一個Applet,main()方法所在的這個public類必須繼承Applet類或者Lapplet類在該類中可以像普通Applet類一樣重寫Applet類的init(),start(),paint()等方法轉換后的程序只能在瀏覽器中加載執行,而不能在Appletviewer中執行。關于Applet和Application,下列說法錯誤的是()是java的兩種應用程序形式Applet可以用Appletviewer或者瀏覽器加載執行Applet不能利用java解釋器從命令行啟動運行Applet和Application程序入口不一樣填空題java程序可以分為Application和Applet兩大類,能在WWW瀏覽器上運行的是__________。javaApplet應用程序的編寫和執行共分為4步進行:編寫源代碼、編寫HTML文件調用該小程序、___________、解釋執行。Applet生命周期中的關鍵方法包括:_________start()、stop()、destroy()。每個Applet必須定義為__________的子類。一個Applet標記中,必須出現的屬性項有________WIDTH、HEIGHT。_________是java的一類特殊應用程序,它嵌入HTML中,隨主頁發布到互聯網上,它在網絡上的傳輸不受計算機CPU和環境控制。java有2類應用程序,它嵌入javaapplication和_________java體系結構中,最上面一層是________和Applet小程序。傳遞給實現了java.awt.event.MouseMotionListener接口的類中mouseDragged()方法的事件對象是_________。當用戶在TextField中輸入一行文字后,按回車,實現________接口可以實現對時間的響應。編寫同時具有Applet與Application的特征的程序。具體的實現方法:作為Application要定義main()方法,并且把main()方法所在的類定義一個______類。為使該程序成為一個Applet,main()方法所在的這個類必須繼承Applet類或者Japplet類應用程序一定要main()方法,小程序一定要繼承自________類。Applet生命周期是指從Applet下載到________,到用戶退出瀏覽器,中止Applet運行的結果。paint()方法帶有一個參數,它是java.awt._______類的一個實例。這個參數總是建立該Applet的panel的圖形上下文。能用這個上下文在Applet中繪圖或寫入文本。Applet程序既可以用________或瀏覽器加載執行,也可以用java解釋器從命令行啟動執行。

下面的Applet獲得了相對于getDocumentBase方法返回的目錄路徑為graph/java.gif的圖像文件,并將它顯示在appletviewer中。請在橫線處填入適當的內容完成該程序。

importjava.awt.*;

importjava._________;

publicclassHwImage___________Applet

{

Imagedusk;publicvoidinit(){

dusk=getImage(getDocumentBase(),”graph/java.gif”);

}publicvoidpaint(Graphicsg)

{

g._______(duke,25,25,this);

}

}第五章異常處理一、選擇題java中用來拋出異常的關鍵字是trycatchthrowfinally關于異常,下列說法正確的是異常是一種對象一旦程序運行,異常將被創建為了保證程序運行速度,要盡量避免異常控制以上說法都不對()類是所有異常類的父類。ThrowableErrorExceptionAWTErrorjava語言中,下列哪一子句是異常處理的出口try{…}子句catch{…}子句finally{…}子句以上說法都不對下列程序的執行,說法錯誤的是classMultiCatch

{

publicstaticvoidmain(Stringargs[])

{

try

{

inta=args.length;

intb=42/a;

intc[]={1};

c[42]=99;

System.out.println(“b=”+b);

}

catch(ArithmeticExceptione)

{

System.out.println(“除0異常:”+e);

}

catch(ArrayIndexOutOfBoundsExceptione)

{

System.out.println(“數組超越邊界異常:”+e);

}

}

}程序將輸出第15行的異常信息程序第10行出錯程序將輸出“b=42”程序將輸出第19行的異常信息下列程序的執行,說法正確的是classExMulti{

staticvoidprocedure()

{

try

{

intc[]={1};

c[42]=99;

}

catch(ArrayIndexOutOfBoundsExceptione)

{

System.out.println(“數組超越界限異常:”+e);

}

}

publicstaticvoidmain(Stringargs[])

{

try

{

procedure();

inta=args.length;

intb=42/a;

System.out.println(“b=”+b);

}

catch(ArithmeticExceptione)

{

System.out.println(“除0異常:”+e);

}

}

}程序只輸出第12行的異常信息程序只輸出第26行的異常信息程序將不輸出異常信息程序將輸出第12行和第26行的異常信息下面程序拋出了一個“異常”并捕捉它。請在橫線處填入適當內容完成程序。classTrowsDemo{

staticvoidprocedure()throwsIllegalAccessExcepton

{

System.out.println(“insideprocedure”);

throw_______IllegalAccessException(“demo”);

}

publicstaticvoidmain(Stringargs[])

{

try

{

procedure();

}

___________

{

System.out.println(“捕獲:”+e);

}

}

二、填空題catch子句都帶一個參數,該參數是某個異常的類及其變量名,catch用該參數去與_______對象的類進行匹配。java虛擬機能自動處理_______異常。變量屬性是描述變量的作用域,按作用域分類,變量有局部變量、類變量、方法參數和_______同一段程序可能產生不止一種異常。可以放置多個________子句,其中每一種異常類型都將被檢查,第一個與之匹配的就會被執行。捕獲異常要求在程序的方法中預先聲明,在調用方法時用try-catch-______語句捕獲并處理。java語言認為那些可預料和不可預料的出錯稱為_________按異常處理不同可以分為運行異常、捕獲異常、聲明異常和______幾種。拋出異常的程序代碼可以是________或者是JDK中的某個類,還可以是JVN.拋出異常、生成異常對象都可以通過_________語句實現。捕獲異常的統一出口通過_________語句實現。java語言的類庫中提供了一個__________類,所有的異常都必須是它的實例或它子類的實例。Throwable類有兩個子類:__________類和Exception類。對程序語言而言,一般有編譯錯誤和____________錯誤兩類。下面程序定義了一個字符串數組,并打印輸出,捕獲數組超越界限異常。請在橫線處填入適當的內容完成程序。publicclassHelloWorld{

inti=0;

Stringgreetings[]=

{

“Helloworld!”,

“No,Imeanit!”,

“HELLOWORLD!!”

};

while(i<4)

{

____________}System.out.println(greeting[i]);}_________________(ArrayIndexOutOfBoundsExceptione){System.out.println(“Re-settingIndexValue”);i=-1;finally

{

System.out.println(“Thisisalwaysprinted”);

}i++;}}}第六章

圖形與用戶界面技術選擇題Window是宣示屏上獨立的本機窗口,它獨立于其它容器,Window的兩種形式是()Frame和DialogPanel和FrameContainer和ComponentLayoutManager和Container框架(Frame)的缺省布局管理器就是()流程布局(FlowLayout)卡布局(CardLayout)邊框布局(BorderLayout)網格布局(GridLayout)java.awt包提供了基本的java程序的GUI設計工具,包含控件、容器和()布局管理器數據傳送器圖形和圖像工具用戶界面構件所有Swing構件都實現了()接口ActionListenerSerializableAccessibleMouseListener事件處理機制能夠讓圖形界面響應用戶的操作,主要包括()事件事件處理事件源以上都是Swing采用的設計規范是()視圖----模式----控制模式-----視圖---控制控制-----模式----視圖控制----視圖-----模式抽象窗口工具包(

)是java提供的建立圖形用戶界面GUI的開發包.AWTSwingJava.ioJava.lang關于使用Swing的基本規則,下列說法正確的是()Swing構件可直接添加到頂級容器中要盡量使用非Swing的重要級構件Swing的Jbutton不能直接放到Frame上以上說法都對下列不屬于java.event包中定義的事件適配器的是(

)構件適配器焦點適配器鍵盤適配器標簽適配器(

)布局管理器使容器中各個構件呈網格布局,平均占據容器空間。FlowLayoutBorderLayoutGridLayoutCardLayout

填空題在需要自定義Swing構件的時候,首先要確定使用那種構件類作為所定制構件的______,一般繼承Jpanel類或更具體的Swing類.Swing的事件處理機制包括_____、事件和事件處理者。Java事件處理包括建立事件源、_______和將事件源注冊到監聽器。Java的圖形界面技術經歷了兩個發展階段,分別通過提供AWT開發包和_______開發包來實現。抽象窗口工具包________提供用于所有Javaapplets及應用程序中的基本GUI組件。Window有兩種形式:Frame(框架)和_____.容器里的組件的位置和大小是由_____________決定的。可以使用setLocation(),setSize()或____________中的任何一中方法設定組件的大小或位置。容器是_____________類的子類。框架的缺省布局管理器是_________.。______________包括五個明顯的區域:東、南、西、北、中。_____________布局管理器是容器中各個構件呈網格布局,平均占據容器空間_____________組件提供了一個簡單的“從列表中選取一個”類型的輸入。在組件中顯示時所使用的字體可以用____________方法來設置。為了保證平臺獨立性,Swing是用________編寫。Swing采用了一種MVC的設計范試,即___________.SwingGUI使用兩種類型的類,即GUI類和__________支持類。________由一個玻璃面板、一個內容面板和一個可選擇的菜單條組成。對Swing構件可以設置_______邊框。___________對話框在被關閉前將阻塞包括框架在內的其他所有應用程序的輸入讀程序后寫出結果importjava.awt.*;publicclassExGui3{

privateFramef;

privatePanelp;

privateButtonbw,bc;

publicstaticvoidmain(Stringargs[]){

ExGui3gui=newExGui3();

Gui.go;}

publicvoidgo()

{

f=newPanel(“Exl”);

bw=newButton(“西”);

bc=newButton(“空白區域”);

f.add(bw,BorderLayout.CENTER);

f.add(bc,BorderLayout.CENTER);

p=newPanel();

bfile=newButton(“文件”);bhelp=newButton(“幫助”);p.add(bfile);p.add(bhelp);f.add(p,BorderLayout.NORTH);f.pack();f.setVisible(false);

第七章多線程選擇題1.

線程調用了sleep()方法后,該線程將進入(

)狀態。可運行狀態運行狀態阻塞狀態終止狀態2.關于java線程,下面說法錯誤的是()線程是以CPU為主體的行為java利用線程使整個系統成為異步創建線程的方法有兩種:實現Runnable接口和繼承Thread類新線程一旦被創建,它將自動開始運行

3.

在java中的線程模型包含()A.

一個虛擬處理器B.

CPU執行的代碼C.

代碼操作的數據D.

以上都是4.在java語言中,臨界區可以是一個語句塊,或者是一個方法,并用()關鍵字標識。A.

synchronizedB.

includeC.

importD.

Thread5.線程控制方法中,yield()的作用是()A.

返回當前線程的引用B.

使比其低的優先級線程執行C.

強行終止線程D.

只讓給同優先級線程運行6.線程同步中,對象的鎖在()情況下持有線程返回A.

當synchronized()語句塊執行完后B.

當在synchronized()語句塊執行中出現例外(exception)時C.

當持有鎖的線程調用該對象的wait()方法時D.

以上都是7.在以下()情況下,線程就進入可運行狀態A.

線程調用了sleep()方法時B.

線程調用了join()方法時C.

線程調用了yield()方法時D.

以上都是8.java用()機制實現了進程之間的異步執行A.

監視器B.

虛擬機C.

多個CPUD.

異步調用9.下列程序實現簡單的線程調度,請回答以下問題:

1

ThreadmyThread=newMyThreadClass();myThread.start();try{

myThread.sleep(10000);}catch(InterruptedExceptione){}myThread.stop();程序執行完第一行后,線程進入________狀態;程序執行完第二行后,線程進入________狀態;程序開始執行第五行時,線程進入________狀態;程序執行完第五行后,線程進入________狀態;程序執行完第十行后,線程進入________狀態;新建狀態可運行狀態阻塞狀態終止狀態10.Thread類的方法中,toString()方法的作用是()A.

只返回線程的名稱B.

返回當前線程所屬的線程組的名稱C.

返回當前線程對象D.

返回線程的名稱填空題1.

________是java程序的并發機制,它能同步共享數據、處理不同的事件。2.

線程是程序中的一個執行流,一個執行流是由CPU運行程序的代碼、__________所形成的,因此,線程被認為是以CPU為主體的行為。3.

線程的終止一般可以通過兩種方法實現:自然撤銷或者是__________.4.

線程模型在java中是由__________類進行定義和描述的。5.

線程的創建有兩種方法:實現_________接口和繼承Thread類。6.

多線程程序設計的含義是可以將程序任務分成幾個________的子任務。7.

按照線程的模型,一個具體的線程也是由虛擬的CPU、代碼與數據組成,其中代碼與數據構成了___________,線程的行為由它決定。8.

java中,新建的線程調用start()方法、如myThread.start(),將使線程的狀態從New(新建狀態)轉換為_________。9.

多線程是java程序的________機制,它能同步共享數據,處理不同事件。10.

進程是由代碼、數據、內核狀態和一組寄存器組成,而線程是表示程序運行狀態的______,如程序計數器、棧指針以及堆棧組成。11.

Thread類提供了一系列基本線程控制方法,如果我們需要讓與當前進程具有相同優先級的線程也有運行的機會則可以調用________方法。

第八章多媒體編程一、編寫一個有背景聲音的Java程序。二、編寫一個實際的動畫程序。

第九章輸入與輸出流一、選擇題1.流的傳遞方式是()

A.并行的

B.串行的

C.并行和串行

D.以上都不對2.下列不是java的輸入輸出流的是()

A.文本流

B.字節流

C.字符流

D.文件流3.凡是從中央處理器流向外部設備的數據流稱為()

A.文件流

B.字符流

C.輸入流

D.輸出流4.獲取一個不包含路徑的文件名的方法為()A.StringgetName()

B.StringgetPath()

C.StringgetAbslutePath()

D.StringgetParent()5.下列屬于文件輸入輸出類的是()A.FileInputStream和FileOutputStream

B.BufferInputStream和BufferOutputStream

C.PipedInputStream和PipedOutputStream

D.以上都是6.下列不屬于FileInputStream輸入流的read()成員函數的是()A.intread();

B.intread(byteb[]);

C.intread(byteb[],intoffset,intlen);

D.intread(intline);7.當處理的數據量很多,或向文件些很多次小數據,一般使用()流A.DataOutput

B.FileOutput

C.BufferedOutput

D.PipedOutput8.當把一個程序、線程或代碼段的輸出連接到另一個程序、線程或代碼短的輸入時,應使用()流A.DataOutput

B.FileOutput

C.BufferedOutput

D.PipedOutput9.當要將一文本文件當作一個數據庫訪問,讀完一個紀錄后,跳到另一個紀錄,它們在文件的不同地方時,一般使用()類訪問。A.FileOutputStream

B.RandomAccessFile

C.PipedOutputStream

D.BufferedOutputStream10.java中,實現通過網絡使用URL訪問對象的功能的流是()A.URL輸入流B.Sock輸入流

C.PipedInputStream輸入流

D.BufferedInputStream輸入流二、填空題1.java的輸入輸出流包括_______、字符流、文件流、對象流以及多線程之間通信的管道。2.java中的非字符輸出流都是________抽象類的子類。3.java對I/O訪問還提供了同步處理機制,保證某時刻只有一個線程訪問一個I/O流,這就是_______4.java中的字符輸出流都是抽象類________的子類.5.DataOutputStream數據流向文件里寫數據的方法為__________.6.RandomAccessFile所實現的接口是_________和DataOutput接口.7.文件類_______是java.io中的一個重要的非流類,里面封裝了對文件系統進行操作的功能.8.文件操作中經常需要的是隨機訪問,java中的_______類提供了隨機訪問文件的功能.9.下列程序實現從控制臺輸入并讀取輸出字符串.請將程序補充完整

importjava.io.*;

publicclassCharInput

{

}

Strings;

inputStreamReaderir;

BufferedReaderin;

ir=new____________(System.io);

in=new____________(ir);

while((s=in.__________)!=null)

{

System.out.println(“Read;”+s);

}

}

}10.下列程序實現從當前目錄的date.ser文件中讀取文件內容并顯示出來.請將程序補充完整.

importjava.io.*;

importjava.util.Date;

publicclassUnSerializeDate

{UnSerializeDate()

{

Dated=null;

try

{

FileInputStreamf=new

_________(“date.ser”);

ObjectInputStreams=new

ObjectInputStream(________);

d=(Date)s.readObject();

f.close();

}

catch(Exceptione)

{

e.printStackTrace();

}

System.out.println(“UnserializedDateobjectfromdate.set”);

System.out.println(“Date:”+d);

}

publicstaticvoidmain(Stringargs[])

{

newUnSerializeDate();

}

}第十章網絡通訊與編程1.

套接口作用是什么?端口有什么意義?2.

顧客和服務者通過套接口通訊,描述基于有連接和無連接通訊時的流程圖3.

什么是URL?一個URL由哪此部分組成?第十一章

java語言的數據庫訪問技術一、選擇題1.Java中,JDBC是指

A.

Java程序與數據庫連接的一種機制

B.Java程序與瀏覽器交互的一種機制

C.Java類庫名稱

D.Java類編譯程序2.在利用JDBC連接數據庫時,為建立實際的網絡連接,不必傳遞的參數是

A.

URL

B.數據庫用戶名

C.密碼3.J2ME是為嵌入式和移動設備提供的Java平臺,它的體系結構由(

)組成。

A.

Profiles

B.Configuration

C.OptionalPackages

D.

以上都是4.J2EE包括的服務功能有

A.

命名服務JNDI(LDAP)和事務服務JTA

B.

安全服務和部署服務

C.消息服務JMS和郵件服務JavaMail

D.以上都是5.JDBC的模型對開放數據庫連接(ODBC)進行了改進,它包含()

A.

一套發出SQL語句的類和方法

B.

更新表的類和方法

C.調用存儲過程的類和方法

D.

以上全部都是6.JDBC中要顯式地關閉連接的命令是()

A.Connection.close();

B.RecordSet.close()

C.Connection.stop()

D.Connection.release()7.TCP/IP系統中的端口號是一個(

)位的數字,它的范圍是0到65535。

A.

8

B.16

C.32

D.648.在Java編程語言中,TCP/IPsocket連接是用java.net包中的類實現的。其連接步驟和方法是

A.

服務器分配一個端口號。如果客戶請求一個連接,服務器使用accept()方法打開socket連接

B.客戶在host的port端口建立連接

C。服務器和客戶使用InputStream和OutputStream進行通信

D.以上全部9.J2ME中的Profile定義應用系統的(

)特性。

A.

生命周期模型

B用戶界面

C.

訪問設備

D.

以上全部都是10.J2EE平臺的優勢不包括()

A.

“一次編程,任意運行”

B.

應用獨立于供應商、服務器、工具,構件的選擇自由

C

跨平臺的解釋器作為其核心技術

D.提高軟件復用二、填空題

1.Java提供的類庫支持_________協議,應用程序可通過URl地址,在訪問網絡上任何地方的對象時,如同訪問本地文件一樣簡單。2.JDBCAPl的含義是Java應用程序連接_________的編程接口。3.Socket的工作步驟分為:創建Socket、打開連接到Socket的輸入/輸出流、按某個協議對Socket進行讀/寫操作、__________。4.Java編程語言前臺應用程序使用________來和JDBC驅動管理器進行交互。5.JDBC驅動管理器使用_________來裝載合適的JDBC驅動。6.Java應用程序通過JDBC.APl向JDBCDriverManager發出請求,指定要裝載的JDBC驅動程序代碼,指定要連接的數據庫的具體類型(品牌和版本號)和實例。JDBC.APl主要是定義在_________中的類和方法。7.JDBC的類都被匯集在________包中,在安裝JavaJDKl.1或更高版本時會自動安裝。8.一個socket包括兩個流:一個輸人流和一個輸出流。如果一個進程要通過網絡向另一個進程發送數據,只需簡單地寫入與socket相關聯的_________。9.J2ME是為嵌入式和_______提供的Java平臺,它的體系結構由Profiles、Configuration和OptionalPackages組成。10.查詢數據庫的7個標準步驟是:載人JDBC驅動器、定義連接的網址URL、建立連接、建立聲明對象、執行查詢或更新、處理結果、____________。11.

________是指在一個特定編程模型下,進程間通信鏈路的端點。

案第一章JAVA語言概論一選擇題1.

B

2.C

3.B

4.A

5.A

6.B

7.A

8.C

9.A

10.A二填空題1.

Oak

2.

面向對象3.

java虛擬機

4.

動態連結5.

編譯層

6.

Windows7.

垃圾回收

8.

java9.

半解釋型

10.

跨平臺11.

javadoc.exe(或java文檔生成器)12.

由編譯器生成的類(.class文件)13.

字節碼

14.

解釋執行15.

main

16.

public或公共17.

java基本類

18.

javax19.

字節代碼

20.

移植接口

第二章

Java語言基礎一選擇題1.D

2.B

3.C

4.C

5.B

6.A

7.B

8.D

9.B

10.D

11.C

12.C

13.D

14.A

15.A16.B

17.D

18.D

19.A

20.D

21.A

22.B

23.B

24.C

25.A

26.B

27.D

28.C

29.D

30.D

31.A

32.A

33.D

34.D

35.C

36.B

37.B二、填空題1.

false2.

字母3.

true4.

final5.

接口6.

107.

double8.

整個類9.

float10.

double11.

n>0n<=10I<=1012.3.413.數據類型14.14,s

第三章

面向對象程序設計一選擇題1.B

2.D

3.D

4.D5.D

6.B

7.C

8.B

9.abstractextendsnew二、填空題1.new2.

單繼承3.

類4.

abstract5.

Object6.

構造函數7.

創建8.

多態性9.

supper10.

類體11.

不同的12.

實體13.

多重14.

使用15.

值16.

常量17.

不能18.

復合19.

參數個數

第四章

Java小應用程序一、選擇題1.B

2.C

3.B

4.D

5.B

6.A

7.B

8.D

9.D

10.C二、填空題1.Applet2.

編譯過程3.

init()4.

Applet或者Japplet5.

CODE6.

Applet7.

javaApplet8.

java應用程序9.

MouseEvent10.

ActionListener11.

Public12.

Applet或者JApplet13.

瀏覽器14.

Gpaphics15.

Appletviewer16.

applet.Applet(或applet.*)extendsdrawImage

第五章

異常處理一、選擇題1.A

2.A

3.C

4.A

5.D

6.new,catch(IllegalAccessExceptione)二、填空題1.

拋出異常2.

運行3.

異常處理參數4.

finally5.

異常6.

拋出異常7.

java應用程序8.

throw9.

finally10.

Throwable11.

Error12.

運行13.

trycatch

第六章

圖形與用戶界面技術一、選擇題

1.A

2.C

3.A

4.C

5.D

6.B

7.A

8.D

9.D

10.C二、填空題1.

父類2.

事件源

3.

建立事件監聽器4.

Swing5.

AWT(AbstractWindowToolkit)6.

Dialog(對話框)7.

布局管理器8.

setBounds()9.

Component10.

BorderLayout11.

Border布局管理器12.

GridLayout13.

下拉列表14.

setFont()15.

java16.

“模型—視圖—控制”17.

非GUI18.

根面板19.一個或多個20.“模式”三、讀程序后寫出結果FrameBorderLayout.WESTtrue第七章

多線程一、選擇題

1.C

2.D

3.D

4.A

5.D

6.D

7.C

8.A

9.ABCBD

10.D二、填空題1.

多線程2.

操縱程序的數據3.

被停止4.

5.

Runnable6.

并行7.

線程體8.

可運行狀態9.

并發10.

寄存器11.

yield()第八章

多媒體編程1、importjava.io.*;importjava.util.*;importjava.awt.*;importjava.awt.event.*;import.*;importjava.applet.*;publicclassmultiAudioextendsAppletimplementsActionListener{StringhUr11,hUr12;AudioClipaudio1,audio2;booleanhState1=false;booleanhState2=false;publicvoidinit(){reize(300,100);hUr11="/test.wav";hUr12="/test.mid";try{audio1=getAudioClip(newURL(getDocumentBase(),hUr11));audio2=getAudioClip(newURL(getDocumentBase(),hUr12));}catch(Exceptione){}this.setBackground(Color.lightGray);Pane1p1=newPane1();ButtonmyButton1=newButton("播放1");myButton1.addActionListener(this);p1.add(myButton1);ButtonmyButton2=newButton("停止1");myButton2.addActionListener(this);p1.add(myButton2);ButtonmyButton3=newButton("循環1");myButton3.addActionListener(this);p1.add(myButton3);this.add(p1);Pane1p2=newPane1();Buttonmybutton4=newButton("播放2");myButton4.addActionListener(this);p2.add(myButton4);ButtonmyButton5=newButton("停止2");myButton5.addActionListener(this);p2.add(myButton5);ButtonmyButton6=newButton("循環2");;myButton6.addActionListener(this);p2.add(myButton6);this.add(p2);}publicvoidactionPerformed(ActionEvente){if(e.getActionCommand()=="播放1"){if(hState1==false){audio1.play();hState1=true;}}else{if(e.getActionCommand()=="播放2")){if(hState2==false){audio2.play();hState2=ture;}}else{if(e.getActionCommand()=="停止1"){if(hState1==true){audio1.stop();hState1=false;}}else{if(e.getActionCommand()=="停止2"){if(hState2==true){audio2.stop();hState2=false;}}else{if(e.getActionCommand()=="循環1")audio1.loop();elseaudio2.loop();}}}}}}運行結果如圖所示.圖播放多個聲音文件的運行結果單擊這些按鈕可以產生不同的聲音效果。使用URL對象可以播放網絡任何位置的聲音文件。二、importjava.awt.*;importjava.applet.*;importjava.awt.event.*;publicclassActiveImagesextendsAppletimplementsRunnable,ActionListener{

ImageiImages[];

//圖像數組

ThreadaThread;

intiFrame;

//圖像數組下標

intsleeptime;

//參數,線程sleep時間

Stringgraphfile;

//圖片文件名

intgraphcount;

//圖片張數

AudioClipau;

//定義一個聲音對象

Bu

溫馨提示

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

評論

0/150

提交評論