Java期末考試試卷1_第1頁(yè)
Java期末考試試卷1_第2頁(yè)
Java期末考試試卷1_第3頁(yè)
Java期末考試試卷1_第4頁(yè)
Java期末考試試卷1_第5頁(yè)
已閱讀5頁(yè),還剩10頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

Java期末考試試卷1

信息學(xué)院2006—2007學(xué)年第二學(xué)期期末考試試題A

課程名稱:Java語(yǔ)言程序設(shè)計(jì)主講:年級(jí):

班級(jí)姓名

一、選擇(每題1分,共20分)

1.有一個(gè)名為MyClass的public類,想成功編譯需滿足以下哪個(gè)條件?()

A.MyClass類中必須定義一個(gè)正確的main。方法。

B.MyClass必須定義在MyClass.java源文件中。

C.MyClass類必須定義在MyClass包中。

D.MyClass類必須被導(dǎo)入。

2.以下哪些修飾符不能用于頂層類?()

A.publicB.privateC.abstractD.final

3.以下哪個(gè)是java中合法的關(guān)鍵字?()

A.arrayB.BooleanC.protectD.super

4.以下哪些是合法的標(biāo)識(shí)符?()

A.%abcdB.2abcdC.packageD._a_long_name

5.在Java中,一個(gè)類可同時(shí)定義許多同名的方法,這些方法的形式參數(shù)的個(gè)數(shù)、類型

或順序各不相同。這種面向?qū)ο蟪绦虻奶匦苑Q為.()

A、隱藏B、覆蓋C、重載D、Java不支持此特性

6.有以下代碼,請(qǐng)問(wèn)該程序的運(yùn)行結(jié)果是什么?()classExample{

publicstaticvoidmain(Stringargs[]){

booleanb=true;

System,out.printin(b);

A.打印輸出trueB.打印輸出1C.編譯錯(cuò)誤D.無(wú)內(nèi)容輸出

7.以下哪些是基本數(shù)據(jù)類型?()

A.intB.StringC.IntegerD.Float

8.給出以下代碼,請(qǐng)選擇正確的選項(xiàng)?()classExample{

publicstaticvoidmain(String[]args){

chara="\ul234”;

}

A.代碼編譯成功B.代碼編譯成功,但有警告C.代碼編譯失敗

9.以下哪個(gè)語(yǔ)句用于聲明一個(gè)二維數(shù)組?()

A.int[5][5]a=newint□□;B.inta=newint[5,5]

C.int[][]a=newint[5][5];D.int[][]a=new[5]int[5];

10.給出以下代碼,請(qǐng)問(wèn)該程序的運(yùn)行結(jié)果是什么?()

第1頁(yè)1共11頁(yè)publicclassExample{

publicstaticvoidmain(String[]args){boolean[]b=newboolean[2];doublet]

d=newdouble[2];System,out.print(b[0]);System,out.printin(d[l]);}}

A.trueO.0B.trueOC.falseO.0D.falseO

11.請(qǐng)問(wèn),以下哪些是有關(guān)垃圾回收器的正確描述(A.程序員可以在指定時(shí)間調(diào)用

垃圾回收器釋放內(nèi)存。B.垃圾回收器可以保證java程序從不會(huì)產(chǎn)生內(nèi)存溢出。C.匿

名對(duì)象一定是垃圾對(duì)象。

D.對(duì)象的finalize。方法在對(duì)象被垃圾回收器之前獲得調(diào)用。

12.一個(gè)URL為:edu:80/local/index.html則其中的含義為(A.通信協(xié)議B.參考點(diǎn)

C.機(jī)器名稱D.通信端口

13.在awt中()組件可用于輸入多行信息。(A.TextAreaB.TextFieldC.

ListD.Comment

14.給出以下代碼,請(qǐng)問(wèn)該程序的運(yùn)行結(jié)果是什么?(classExample(

publicstaticvoidmain(String[]args){intx=l;inty=~x+l;

System,out.printin(x+""+y);}}

A.-11B.11C.1_1D.-1-1

15.以下哪些修飾符可以使其修飾的成員對(duì)同包類或其它包的子類是公開(kāi)的?(A.

publicB.privateC.protectedD.無(wú)訪問(wèn)修飾符16.以下哪個(gè)類不能被子類繼承?

()

A.classA{}B.abstractfinalA{}C.nativeclassA()D.finalclassA()

17.給出以下代碼,請(qǐng)問(wèn)該程序的運(yùn)行結(jié)果是什么?(classExample!staticint

i=l,j=2;static{display(i);}

publicstaticvoidmain(String[]args){display(j);}staticvoiddisplay(int

n){System,out.print(n);}}

A.1B.12C.2D.21

18.給出以下代碼,請(qǐng)選擇正確的選項(xiàng)。(publicclassOuterClass{

privateStrings=,,Iamouterclassmembervariable”;classInnerClass

第2頁(yè)2共11頁(yè)

)

)))

)))

{

privateStringsi二〃Iaminnerclassvariable”;

publicvoidinnerMethodO

System,out.printin(s);

System,out.printin(si);

)

)

publicvoidouterMethodO

(

OuterClass.InnerClassinner=newOuterClass.InnerClassO;

inner.innerMethodO;

)

publicstaticvoidmain(String[]args)

(

OuterClassmyapp=newOuterClass();

myapp.outerMethod();

})

A.代碼編譯失敗B.代碼編譯成功C.運(yùn)行異常D.運(yùn)行正常

19.給出以下定義在線程run()方法中的代碼片斷,請(qǐng)問(wèn)哪些描述是正確的?()

1.try{

2.sleep(100);

3.}catch(InterruptedExceptione){}

A.代碼編譯失敗,因?yàn)槲床东@run()方法拋出的異常

B.在第2行代碼最多停止100毫秒后繼續(xù)執(zhí)行

C.在第2行代碼停止整100毫秒后繼續(xù)執(zhí)行

D.在第2行代碼停止至少100毫秒后繼續(xù)執(zhí)行

20.下面哪些類用于實(shí)現(xiàn)TCP連接的客戶端和服務(wù)端?()

A.ServerSocket,DatagramSocketB.Server,Socket

C.Socket,ServerSocketD.DatagramPacket,DatagramSocket

二、填空題(每題2分,共20分)

1、如果有,一個(gè)類MyFrame是Frame的子類,能夠被不同包中的類所使用,同時(shí)又能夠

支持多線程運(yùn)行,請(qǐng)寫出該類的聲明頭部

2、在AWT中,如果一個(gè)JavaApplet源程序文件只定義有一個(gè)類,該類的類名為

MyApplet,則類MyApplet必須是類的子類并且存儲(chǔ)該源程序文件的文件名為。

3、創(chuàng)建一個(gè)名為MyPackage的包的語(yǔ)句是該語(yǔ)句應(yīng)該放在程序的位置為:。

4、多態(tài)是指在Java中有兩種多態(tài),一種是使用方法的實(shí)現(xiàn)多態(tài),另一種是使用方法

的實(shí)現(xiàn)多態(tài)。

5、Graphics類的方法在用來(lái)顯示圖象。

6、在java中,輸入輸出的處理需要引入的包是,面向字節(jié)

的輸入輸出類的基類是和___________,面向字符

的輸入輸出類的基類是——和

第3頁(yè)3共11頁(yè)7、在java中,和異常處理相關(guān)的關(guān)鍵字有

8、在java中,所有類體型的根是類。

9、請(qǐng)寫出java類中主方法的聲明方式

_________________________________________________10,在java的GUI程序設(shè)計(jì)中,單

擊按鈕產(chǎn)生的事件是三、判斷題(每題1分,共10

分)

1、instanceof運(yùn)算符的右操作數(shù)可以是一個(gè)接口。()2、一個(gè)final類不能包含

有抽象方法。()3、一個(gè)布爾型數(shù)據(jù)可以轉(zhuǎn)換為其他基本數(shù)據(jù)類型。()4、

While循環(huán)的條件表達(dá)式結(jié)果必須為布爾型。5、Throwable類是所有異常類的基類。

6、當(dāng)線程的start()方法被調(diào)用時(shí),線程立即進(jìn)入運(yùn)行狀態(tài)。7.每次調(diào)整Applet的

大小時(shí),都會(huì)執(zhí)行paint()方法。8.Font類是一種抽象類。9.子類對(duì)象中要調(diào)用父類

的成員方法,必須使用super關(guān)鍵字。10.父類的引用不可以指向子類的對(duì)象。四、程

序閱讀題(每題4分,共20分)1、閱讀以下程序:publicclassSum

{publicstaticvoidmain(Stringargs[]){doublesum=0.0;

for(inti=1;i<=100;i++)sum+=1.0/(double)i;

System,out.printin("sum=〃+sum);}}

此程序的完成的功能是:

2^閱讀以下程序,提示:(請(qǐng)仔細(xì)閱讀,小心看錯(cuò)。)classSuperClass{

inta,b;

SuperClass(intx,inty){a=x;b=y;}

voidshow(){System,out.printin(〃a=〃+a+〃\nb=〃+b);}}

classSubClassextendsSuperClass{intc;

SubClass(intaa,intbb,intcc){super(aa,bb);c=cc;}

voidshow(){System,out.printin(〃c=〃+c+〃\na=〃+a+〃\nb="+b);}}

第4頁(yè)4共11頁(yè)

)))))))(((((((classSubSubClassextendsSubClass

(inta;

SubSubClass(intaa,intbb,intcc)

{super(aa,bb,cc);

a=aa+bb+cc;

)

voidshow()

{System,out.printin(〃a=〃+a+〃\nb=〃+b+〃\nc=〃+c);}}

classtest

publicstaticvoidmain(String[]args)

SuperClassp=newSubSubClass(10,20,30);

p.show();

)

)

此程序的輸出結(jié)果是:

3、閱讀以下程序:

importjava.io.

publicclassabc

{publicstaticvoidmain(Stringargs[])

{ABs=newAB(z,Hello!","IloveJAVA.");System,out.println(s.toString());

}

}

classAB{

Stringsi;

Strings2;

AB(Stringstrl,Stringstr2)

{si=strl;s2=str2;}

publicStringtoString()

(returnsl+s2;}

)

此程序的輸出結(jié)果是:

4.閱讀以下程序,并填空。

import;

classFileType

第5頁(yè)5共11頁(yè)publicstaticvoidmain(Stringargs[])

try

(

FileReaderfis=new(args[0]);BufferedReaderreader

=newBufferedReader();Strings;

while((s=reader.readLine())!=){

System,out.printin(^line〃+(i++)+〃:〃+s);

)

fis.close();

reader,close();

}catch(lOExceptione)

(

System,out.printin(e);

)

catch(el)

{System,out.printin("缺少命令行參數(shù)!");}

5、閱讀以下程序,并填空。

import;

importjava.awt.event.*;

publicclassOvalDrawerextendsFrameimplementsRunnable{

privateColor]]colors={Color.RED,Color.BLACK,Color.BLUE,

Color.GREEN,Color.DARK_GRAY};

privateColorcolor;

privateintx=10,y=10,width=10,height=10;

publicOvalDrawer(Stringtitle){

super(title);

__________________________;〃設(shè)置窗口大小為300*300

setVisible(true);

____________________________;〃創(chuàng)建線程并啟動(dòng)

)

publicvoidrun(){

while(true){

x=(int)(Math,random()*300);

y=(int)(Math,random()*300);

width=(int)(Math,random()*100);

height=(int)(Math,random()*100);

color=colors[(int)(Math,random()*(colors,length-1))];

____________________________________;〃刷新窗口內(nèi)容

第6頁(yè)6共11Mtry{Thread,sleep(400);}catch(InterruptedExceptione){throw

newRuntimeException(e);}}

publicvoidpaint(Graphicsg){

g.setColor(color);

_________________________________;//畫(huà)橢圓

}

publicstaticvoidmain(Stringargs[]){

newOvalDrawer("heno");

}

)

五、綜合題(每題10分,共30分)

1.構(gòu)造一個(gè)類Point來(lái)描述屏幕上的一個(gè)點(diǎn),該類的構(gòu)成包括點(diǎn)的x和y兩個(gè)坐標(biāo),以

及一些對(duì)點(diǎn)進(jìn)行的操作,包括:取得點(diǎn)的坐標(biāo)值,對(duì)點(diǎn)的坐標(biāo)進(jìn)行賦值,求兩點(diǎn)之間的距

離distance。方法(注意:此方法必須是靜態(tài)的!),toString()方法和equals。方

法(),編寫應(yīng)用程序Testapp.java生成該類的若干對(duì)象并對(duì)其進(jìn)行測(cè)試操作。

第7頁(yè)7共11頁(yè)2.編寫一顯示文本文件的java程序,文件名從命令行輸入。

3.請(qǐng)編寫GUI程序,界面如下圖所示,要求完成各按鈕和窗口關(guān)閉的事件編程。

第8頁(yè)8共11頁(yè)參考答案:

一、選擇

1.B2.B3.D4.D5.C6.A7.A8.A9.C10.C11.D12.A13.A14.C

15.C16.D17.B18.D19.D20.C

二、填空

1.publicclassMyFrameextendsFrameimplementsRunnable

2.AppletMyApplet,java

3.PackageMyPackage第一句

4.對(duì)于同樣的消息,不同的對(duì)象有不同的響應(yīng)行為重載覆蓋

5.drawlmage()

6.java,ioInputStreamOutputStreamReaderWriter

7.trycatchfinallythrowthrows

8.Object

9.publicstaticvoidmain(String[]args)

10.ActionEvent

三、判斷

1.V2.V3.X4.V5.V6.X7.V8.X9.V10.X

四、程序閱讀

1、求解sum=l+l/2+l/3+l/4+。oo+1/100的值并打印輸出。

2、a=60

b=20

c=30

3、Hello!IloveJAVA.

4^java.io.*

inti=l;

FileReader

null

ArrayIndexOutOfBoundsException

5、java.awt.*;

setSize(300,300);

newThread(this).start();

repaint();

g.drawOva1(x,y,width,height);

五、綜合題

1、參考答案:

classPoint

{privateintx,y;

Point(inta,intb){x=a;y=b;}

publicintgetx(){returnx;)

publicintgety(){returny;}

publicstaticdoubledistance(Pointpl,Pointp2)

(

intx=p2.getxO-pl.getx(),y=p2.gety()-pl.gety();

doubledist=Math.sqrt(x*x+y*y);

第9頁(yè)9共11頁(yè)returndist;

)

publicStringtoString()

(

return〃(〃+x+〃,〃+y+〃)〃;

)

publicbooleanequals(Pointp)

return(this,x二二p?getX()&&this.y=二p.getY());

publicclassTestapp

{publicstaticvoidmain(String[]args)

(

PointA=newPoint(2,3);PointB=newPoint(5,7);

System.out.println(z,A->B:〃+Point.distance(A,B));

)

)

2、參考答案

importjava.io.

classmytype

(

publicstaticvoidmain(String[]args)

(

try(

FilelnputStreamfin=newFileInputStream(args[O]);

intch=fin.read();

while(ch!=-l)

(

System.out.print((char)ch);

ch=fin.read();

fin.close();

}catch(Arr

溫馨提示

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

評(píng)論

0/150

提交評(píng)論