java考試試題題庫_第1頁
java考試試題題庫_第2頁
java考試試題題庫_第3頁
java考試試題題庫_第4頁
java考試試題題庫_第5頁
已閱讀5頁,還剩34頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

UAVA程序設(shè)計》期末考試試題(一)程序設(shè)計》

UAVA程序設(shè)計》期末考試試題(二)程序設(shè)計》

一.判斷題

1.Java的源代碼中定義幾個類,編譯結(jié)果就生成幾個以.class為后綴

的字節(jié)碼文件.(J)

2.Java程序里,創(chuàng)建新的類對象用關(guān)鍵字new,回收無用的類對象使用

關(guān)鍵字free.(X)X

3.Java有垃圾回收機(jī)制,內(nèi)存回收程序可在指定的時間釋放內(nèi)存對象.

(X)X

4.構(gòu)造函數(shù)用于創(chuàng)建類的實例對象,構(gòu)造函數(shù)名應(yīng)與類名相同,返同類

型為void.(X)X

5.在異常處理中,若try中的代碼可能產(chǎn)生多種異常則可以對應(yīng)多個

catch語句,若catch中的參數(shù)類型有父類子類關(guān)系,此時應(yīng)該將父類

放在后面,子類放在前面.

6.擁有abstract方法的類是抽象類,但抽象類中可以沒有abstract

方法.

7.Java的屏幕坐標(biāo)是以像素為單位,容器的左下角被確定為坐標(biāo)的起

八占、、?

8.靜態(tài)初始化器是在其所屬的類加載內(nèi)存時由系統(tǒng)自動調(diào)用執(zhí)行.(J)

9.在Java中對象可以賦值,只要使用賦值號(等號)即可,相當(dāng)于生成

了一個各屬性與賦值對象相同的新對象.(X)X

單項選擇題

1.Javaapplication中的主類需包含main方法,以下哪項是main

方法的正確形參?()

B,Stringar[],C,Chararg).D,StringBufferargs[]A,String

args

2.以下關(guān)于繼承的敘述正確的是(A,在Java中類只允許單一繼承,B,

在Java中一個類只能實現(xiàn)一個接口

C,在Java中一個類不能同時繼承一個類和實現(xiàn)一個接口D,在Java

中接口只允許單一繼承3.paint()方法使用哪種類型的參數(shù)?

(A,Graphics,B,Graphics2D)C,String)D,charD,Color

4.以下哪個不是Java的原始數(shù)據(jù)類型(A,intB,Boolean,

C,float).C,Applet

5.以下哪項可能包含菜單條(A,PanelB,Frame,

D,Dialog)D,public

6.若需要定義一個類域或類方法,應(yīng)使用哪種修飾符?(A,static,

B,packageC,private

共6頁,第1頁

7.在瀏覽器中執(zhí)行applet程序,以下選項中的哪個方法將被最先執(zhí)行

(A,init(),B,start()C,destroy()D,stop())

).

8.給出下面代碼,關(guān)于該程序以下哪個說法是正確的?(publicclass

Person{staticintarr[]=newint[5];publicstaticvoid

main(Stringa[]){System.out.println(arr[0]);}A,編譯時將產(chǎn)

生錯誤時將產(chǎn)生錯誤C,輸出零,D,輸出空}

B,編譯時正確,運行

9.下列哪些語句關(guān)于Java內(nèi)存回收的說明是正確的?(A,程序員必須

創(chuàng)建一個線程來釋放內(nèi)存B,內(nèi)存回收程序負(fù)責(zé)釋放無用內(nèi)存,C,內(nèi)存

回收程序允許程序員直接釋放內(nèi)存D,內(nèi)存回收程序可以在指定的時間

釋放內(nèi)存對象10.以下哪個關(guān)鍵字可以用來對對象加互斥

鎖?(A,transientB,synchronized,))

)

C,serializeD,static

11.以下代碼段執(zhí)行后的輸出結(jié)果為(intintA,,x=-3;y-10;-1

B,2

System,out.printin(y%x);C,1)D,3

12.有以下程序片段,下列哪個選項不能

插入到行1.(1.2.publicclass3.//dosth4.}A,importjava.awt.*;C,class

OtherClass{}B,packagemypackage;Interesting{

D,publicclassMyClass{},

13.設(shè)有下面兩個賦值語句:

共6頁,第2頁

a=Integer.parselnt("12");b=Integer.valueOf("12").intValue();下述說法

正確的是().A,a是整數(shù)類型變量,b是整數(shù)類對象.B,a是整數(shù)類對

象,b是整數(shù)類型變量.C,a和b都是整數(shù)類對象并且值相等.D,a和b

都是整數(shù)類型變量并且值相等.,14.FilterOutputStream是

BufferedOutputStream,DataOutputStream及Printstream的父類,以下哪

個類可能是FilterOutputStream構(gòu)造函數(shù)的參數(shù)類型?A,OutputStream,

C,InputStreamB,FileD,BufferedOutputStream)語句.

15.在編寫JavaApplet程序時,需在程序的開頭寫上(A,importC,import

java.awt.*;java.io.*;B,import,D,import

java.applet.Applet;java.awt.Graphics;

16.類Parent,Child定義如下:1.publicclass3.4.}5.publicclass6.7.}將

以下哪種方法插入行6是不合法的.(A,float,aFun(floata,floatb){}

Exception{})ChildextendsParent{ParentaFun(floata,floatb)throws}

2.{publicfloatlOException{

B,publicintC,publicfloatD,publicint

aFun(inta,intb)throwsaFun(floataFun(inta,p,int

floatq){}b)throwslOException{})修飾符修飾該接D,public,

17.在使用interface聲明一個接口時,只可以使用(口.A,private

B,protected

C,privateprotected).

18,有以下方法的定義,請選擇該方法的返回類型(

共6頁,第3頁

ReturnTypemethod(bytex,doubley){return(short)x/y*2;}A,byte

B,shortC,intD,double,)

19,關(guān)于以下代碼段的說法正確的是(「Strings="abcde";2.StringBuffer

sl=newStringBuffer("abcde");3.if(s.equals(sl))4.6.sl=null;s=null;

5.if(sl.equals(s))

A,第1行編譯錯誤,String的構(gòu)造器必須明確調(diào)用B,第3行編譯錯誤,

因為s與si有不同的類型C,編譯成功,但執(zhí)行時在第5行有異常拋

出D,編譯成功,過程中也沒有異常拋出,20,編譯并運行以下程序,以下

描述哪個選項是正確的(1.class3.4.}A,編譯通過運行無異常C,行2

出錯,不能成功編譯,三.程序閱讀題1.以下程序的輸出結(jié)果為.class

StringTest1{publicstaticvoidmain(String[]args){Stringsl="hello";

Strings2=newString("hello");相等.B,編譯通過但運行時出錯D,不能

成功編譯,行3出錯X{StringtoString()i{super.toStringO;}return2.

protectied)

共6頁,第4頁

if(sl.equals(s2)){System.out.println("相等)}else{System.out.println("不

相等)}}}.2.以下程序段的輸出結(jié)果為publicclassTestArray{public

staticvoidmain(Stringintinti,j;a[]={5,9,6,8,7};intk=i;j++)if

(a[j]<a[k])k=j;inttemp=a[i];a[i]=a[k];a[k]=temp;}for(i=0;

i<a.length;i++)System.out.print(a[i]+"System.out.println();}}3.寫出以

下程序的功能..importjava.io.*;publicclassTestFile{publicstaticvoid

main(Stringargs[])throwsException{");argsf]){56789.

for(i=0;i<a.length-1;i++){for(j=i;j<a.length;

共6頁,第5頁

BufferedReaderbr=newBufferedReader(new

InputStreamReader(System,in));BufferedWriterbw=new

BufferedWriter(newFileWriter("input.txt"));Strings;while(true)

{System.out.print("請輸入一個字符串:");System.out.flush();

s=br.readLine();if(s.length()==0)break;bw.write(s);bw.newLine();}

bw.close();}}功能:從鍵盤逐一輸入字符串,文件中,直至輸入空行.功

能:從鍵盤逐一輸入字符串,逐一輸出至input.txt文件中,直至輸入空行..

4.閱讀以下程序,寫出輸出結(jié)果.classAnimal{System.out.print("Animal)

publicclassDog(){System.out.print("Dog");}DogextendsAnimal{");}

Animal(){

publicstaticvoidmain(String[]args){Dogsnoppy=new}輸出結(jié)

果:Animal輸出結(jié)果:DogDog();}

《JAVA程序設(shè)計》期末考試試題(三)程序設(shè)計》

一,單項選擇題1,如下哪個是Java中的標(biāo)識符0

A,publicB,superC,3numberD,width,

2,如下哪個是Java中的標(biāo)識符()A,fieldname,

B,superC,3numberD,#number

3,已知如下定義:Strings="story";下面哪個語句不是

合法的()A,s+="books";C,intlen=s.length;,B,s=s

+100;D,Stringt=s+"abc";

4,如下哪個是Java中有效的關(guān)鍵字0A,nameB,hello

C,false,D,good)

5,下面的代碼段執(zhí)行之后count的值是什么(

intcount=1;for(inti=1;i<=5;i++){count+=i;}

System.out.println(count);

A,5

B,1

C,15

D,16,

6,定義一個類,必須使用的關(guān)鍵字是()A,publicB,class,

C,interface)D,staticD,static

7,定義一個接口必須使用的關(guān)鍵字是(A,publicB,class

C,interface,

8,如果容器組件p的布局是BorderLayout,則在p

的下邊中添加一個按鈕b,應(yīng)該使用的語句是

(A,p.add(b);C,p.add(b,"South");,)B,p.add(b,"North");

D,b.add(p,"North");

9,聲明并創(chuàng)建一個按鈕對象b,應(yīng)該使用的語句是()

A,Buttonb=newButton();B,buttonb=newbutton();,

C,Buttonb=newb();D,b.setLabel("確定");10,Frame對

象默認(rèn)的布局管理器是(A,FlowLayoutC,CardLayout

D,null)

B,BorderLayout,

11,下列哪一個import命令可以使我們在程序中創(chuàng)建

輸入/輸出流對象()A,importjava.sql.*;C,import

java.io.*;,B,importjava.util.*;D,.*;

12,下面哪一個import命令可以為我們提供編寫網(wǎng)絡(luò)

應(yīng)用程序的類()A,importjava.sql.*;C,importjava.io.*;

B,importjava.util.*;D,.*;,

13,如果需要從文件中讀取數(shù)據(jù),則可以在程序中創(chuàng)建

哪一個類的對象()A,FilelnputStream,

C,DataOutputStreamB,FileOutputStreamD,FileWriter

二,填空題1,如果將類MyClass聲明為public,它的

文件名稱必須是(MyClass.java)才能正常編譯.2,Java

程序中的單行注釋符是(〃),多行注釋符是(/**/).

3,Java中布爾類型的常量有兩種,它們是(true)和

(false).4,Java中用于定義小數(shù)的關(guān)鍵字有兩個:(float)

和(double),后者精度高于前者.5,Java中用于兩個

數(shù)相等比較的運算符是:(==),用于不相等比較的運算

符是(<>).6,在Java中定義一個字符串類型的變量

str的語句是:(Stringstr;),定義一(int[]arr=new

int[10];).個具有10個元素的整型數(shù)組a的語句是:

7,導(dǎo)入mypackage包中的所類的命令是(import

mypackage.*;).8,當(dāng)聲明一個數(shù)組intarr[]=new

int[5];時,這代表這個數(shù)組所保存的變量類型是(int),

數(shù)組名是(arr),數(shù)組的大小為⑸,數(shù)組元素下標(biāo)的使用

范圍是(0.至U4))9,假設(shè)x=13,y=4,則表達(dá)式

x%y!=0的值是(true)其數(shù)據(jù)類型是,(boolean).10,

異常處理是由(try)(catch)和finally塊三個關(guān)鍵所組

成的程序塊.,三角形)11,以下程序段的輸出結(jié)果是

(三角形三角形

intx=5,y=6,z=4;if(x+y>z&&x+z>y&&z+

y>x)System.out.println("三角形");else

System.out.println("不是三角形)

12,下面程序段的執(zhí)行結(jié)果是(65432)

inta[]={2,3,4,5,6);for(inti=a.length-1;i>=0;

i—)System.out.print(a[i]+

三,程序閱讀題程序閱讀題1,以下程序的輸出結(jié)果為

_Peteris17yearsold!.,

publicclassPerson{Stringname;intage;public

Person(Stringname,intage){=name;

this.age=age;}publicstaticvoidmain(String[]args)

{Personc=newPerson("Peter",17);

System.out.println(+"is"+c.age+"years

old!");}}

2,以下程序的輸出結(jié)果為一課程號,課程號:101課

程名:ASP學(xué)分:3—.課程名學(xué)分課程號

publicclassCourse{privateStringeNumber;private

StringcName;privateintcUnit;publicCourse(String

number,Stringname,intunit){eNumber=number;

cName=name;cUnit=unit;}publicvoid

printCourseInfo(){System.out.println("課程號:”+

eNumber+"課程名:"+cName+"學(xué)分:"+

cUnit);}}classCourseTest{publicstaticvoid

main(String[]args){Coursec;c=newCourse,'101",

"ASP",3);c.printCourseInfo();}}

湯姆貓體重:3,以下程序的輸出結(jié)果為—湯姆貓體

重:20.0斤—湯姆貓體重

publicclassTom{privatefloatweight;privatestatic

Stringname;publicvoidsetWeight(floatweight)

{this.weight=weight;}privatevoidout()

{System.out.println(name+"體重:"+weight+"斤");}

publicstaticvoidmain(String[]args){T="湯

姆貓”;Tomcat=newTom();cat.setWeight(20);

cat.out();}}

姓名:Tom年齡年齡:15家庭住址金水區(qū)電話家

庭住址:金水區(qū)電話:661234564,以下程序的輸出結(jié)果

一姓名,姓名學(xué)校:九中學(xué)校:九中一

publicclassFather{Stringname,address,tel;intage;

publicFather(Stringname,intage){=name;

this.age=age;}voidout(){System.out.print("姓名:"+

name);System.out.print("年齡:"+age);}void

outOther(){System.out.print("家庭住址:"+address);

System.out.print("電話:"+tel);}}classSonextends

Father{Stringschool;publicSon(Stringname,intage)

{super(name,age);}voidout(){super.out();

super.outOther();System.out.println("學(xué)校:“+school);}

publicstaticvoidmain(Stringargs[]){Sonson=new

Son("Tom",15);son.address="金水區(qū)";son.school="

九中”;

son.tel="66123456";son.outQ;}}

5,下列程序的運行結(jié)果是_12345—

publicclassMyClass{inta[]={1,2,3,4,5);void

out(){for(intj=0;j<a.length;j++)

System.out.print(a[j]+}publicstaticvoid

main(String[]args){MyClassmy=newMyClassQ;

my.out();})

四,簡答題1,簡述Java中異常處理的機(jī)制?,答:首先

Java的異常是面向?qū)ο蟮?—個Java的Exception

是一個描述異常情況的對象.當(dāng)出現(xiàn)異常情況時,一

個Exception對象就產(chǎn)生了,并放到異常的成員函數(shù)

里.Java的異常處理是通過5個關(guān)鍵詞來實現(xiàn)的:

try,catch,throw,throws和finally.1.異常處理:在Java

語言的錯誤處理結(jié)構(gòu)由try,catch,finally三個塊組成.

其中try塊存放將可能發(fā)生異常的Java語言,并管

理相關(guān)的異常指針;catch塊緊跟在try塊后面,用來

激發(fā)被捕獲的異常;finally塊包含清除程序沒有釋放

的資源,句柄等.不管try塊中的代碼如何退出,都將

執(zhí)行finally塊.2.拋出異常:Java語言可以不在方法

中直接捕獲,而用throw語句將異常拋給上層的調(diào)

用者.Throw語句就是來明確地拋出一個異常;首先你

必需得到一個Throwable的實例句柄,通過參數(shù)傳到

catch中,或者采用new操作符來創(chuàng)建一個.2,什么

是繼承?,通過必要的說明能夠?qū)崿F(xiàn)某個類無需重新

定義就擁有另一個類的某些屬性和答:方法,并把這

種關(guān)系稱為繼承,先定義的類稱為父類,后定義的類稱

為子類,并

且允許多層的繼承關(guān)系.3,請簡述重載和重寫的區(qū)別?

答:方法的重寫Overriding和重載Overloading是

Java多態(tài)性的不同表現(xiàn).重寫Overriding是父類與

子類之間多態(tài)性的一種表現(xiàn),重載Overloading是一

個類中多態(tài)性的一種表現(xiàn).如果在子類中定義某方法

與其父類有相同的名稱和參數(shù),我們說該方法被重

寫(Overriding).子類的對象使用這個方法時,將調(diào)用子

類中的定義,對它而言,父類中的定義如同被“屏蔽”了.

如果在一個類中定義了多個同名的方法,它們或有不

同的參數(shù)個數(shù)或有不同的參數(shù)類型,則稱為方法的重

載(Overloading).Overloaded的方法是可以改變返回

值的類型.五,程序設(shè)計題程序設(shè)計題1,按以下要求

編寫程序(1)創(chuàng)建一"個Rectangle類,添加width和

height兩個成員變量(2)在Rectangle中添加兩種

方法分別計算矩形的周長和面積(3)編程利用

Rectangle輸出一個矩形的周長和面積解答:解答:

publicclassRectangle{floatwidth,height;public

Rectangle(floatwidth,floatheight){this.width=width;

this.height=height;}publicfloatgetLength(){return

(this,width+this.height)*2;}publicfloat

getArea(){returnthis.width*this.height;}publicstatic

voidmain(String[]args){Rectanglerect=new

Rectangle(10,20);System.out.println("周長是:"+

rect.getLength());System.out.println("面積是:”+

rect.getArea());}}

2,按以下要求編寫程序,(1)編寫Animal接口,接口

中聲明run()方法(2)定義Bird類和Fish類實現(xiàn)

Animal接口(3)編寫B(tài)ird類和Fish類的測試程

序,并調(diào)用其中的run()方法解答:解答:

publicinterfaceAnimal{voidrun();}classBird

implementsAnimal{publicvoidrun()

{System.out.println("鳥兒在飛...");}}classFish

implementsAnimal{publicvoidrun()

{System.out.println("魚兒在游...");}}

publicclassTestAnimal{publicstaticvoidmain(String[]

args){Birdbird=newBird();bird.run();Fishfish=

newFish();fish.run();}}

3,編寫一個Frame框架應(yīng)用程序,要求如下:,(1)在

窗口設(shè)置兩個菜單“文件“,“編輯“(2)在“文件"菜單里

添加三個菜單項“打開保存「關(guān)閉"(3)在“編輯"菜

單里添加兩個菜單項“復(fù)制”,“粘貼"(4)點擊關(guān)閉菜單

項時,使程序關(guān)閉.解答:解答:

importjava.awt.Color;importjava.awt.Frame;

importjava.awt.Menu;importjava.awt.MenuBar;import

java.awt.MenuItem;importjava.awt.event.ActionEvent;

importjava.awt.event.ActionListener;import

java.awt.event.WindowAdapter;import

java.awt.event.WindowEvent;/**主窗體*/public

classMyFrameextendsFrame{privatestaticfinallong

serialVersionUID=6895463895656626294L;private

FramefrmMain;MenuBarmb;MenumnuFile;Menu

mnuEdit;MenultemmiOpen;MenuitemmiSave;

MenuitemmiClose;MenuitemmiCopy;Menuitem

miPaste;publicMyFrame(){frmMain=newFrame(“主

窗體)//創(chuàng)建菜單欄mb=newMenuBar();//創(chuàng)建

菜單mnuFile=newMenu("文件)mnuEdit=new

Menu("編輯");//創(chuàng)建菜單項miOpen=new

Menuitem("打開");miSave=newMenuitem("保存)

miClose=newMenultem("關(guān)閉");miCopy=new

Menuitem("復(fù)制");miPaste=newMenuitem("粘貼");}

publicvoidshowFrame(){frmMain.setSize(800,600);//

窗體//菜單欄//”文件“菜單//”編輯“菜單//“打開”

菜單項//“保存”菜單項//“關(guān)閉”菜單項//“復(fù)制”菜

單項〃“粘貼”菜單項

frmMain.setLocation(l00,100);

frmMain.setBackground(Color.white);

frmMain.setVisible(true);frmMain.setLayout(null);

frmMain.addWindowListener(newWindowHandler());//

注冊窗口監(jiān)聽器〃將菜單欄放入窗體中

frmMain.setMenuBar(mb);//將菜單放入菜單欄中

mb.add(mnuFile);mb.add(mnuEdit);//將菜單項放入

菜單中mnuFile.add(miOpen);mnuFile.add(miSave);

mnuFile.add(miClose);mnuEdit.add(miCopy);

mnuEdit.add(miPaste);//注冊動作事件監(jiān)聽器

miClose.setActionCommand("miClose_Clicked");

miClose.addActionListener(newMenuHandler());}//

定義一個內(nèi)部類,在這個類中編寫窗口關(guān)閉事件處理

程序.privateclassWindowHandlerextends

WindowAdapter{publicvoid

windowClosing(WindowEvente){System.exit(O);//退

出應(yīng)用程序,狀態(tài)碼0表示正常終止,非0表示異常

終止.}}〃定義一個內(nèi)部類,在這個類中編寫動作事

件處理程序.privateclassMenuHandlerimplements

ActionListener{publicvoid

actionPerformed(ActionEvente){if

(e.getActionCommand()=="miClose_Clicked")

{System.exit(O);//退出應(yīng)用程序

}}}}

publicclassTestMyFrame{publicstaticvoid

main(String[]args){//啟動主窗體MyFrame

guiWindow=newMyFrame();

guiWindow.showFrame();}}

《JAVA程序設(shè)計》期末考試試題(四)程序設(shè)計》

一,單選題

L下列程序段執(zhí)行后的結(jié)果是(,).Strings=new

StringC'abcdefg");for(inti=0;i<s.length();

i+=2){System.out.print(s.charAt(i));}A)acegB)

ACEG).352B)12D)8357812735227C)abcdefg

D)abed2,有整型數(shù)組:int口x={12,35,8,7,2};,則調(diào)用方

法Arrays.sort(x)后,數(shù)組x中,的元素值依次是(A)

2C)357128812

3,下面的程序段創(chuàng)建了BufferedReader類的對象in,

以便讀取本機(jī)c盤my文,件夾下的文件

l.txt.File構(gòu)造函數(shù)中正確的路徑和文件名的表示是().

Filef=newFile(填代碼處);file=newFileReader(f);

in=newBufferedReader(file);A)"./I.txt"B)"../my/l.txt"

C)"c:\\my\\l.txt"D)"c:\my\l.txt").4,應(yīng)用程序的

main方法中有以下語句,則輸出的結(jié)果是(,String

sl=newString("abc");Strings2=newString("abc");

booleanbl=sl.equals(s2);booleanb2=(sl==s2);

System.out.print(b1+"A)truefalse"+b2);C)truetrue

D)false).falseB)falsetrue

5,應(yīng)用程序的main方法中有以下語句,則輸出的結(jié)果

是(,Hashtablehashtable=newHashtable();

hashtable.put("xH,"12345");hashtable.put("y","67890");

hashtable.put("a","abcde");

System.out.println(hashtable.get("a"));A)aB)abcdeC)

12345D)678906,下面語句的功能是().,

第1頁共8頁

RandomAccessFileraf2=new

RandomAccessFile("l.txt","rw");A)打開當(dāng)前目錄下的

文件l.txt,既可以向文件寫數(shù)據(jù),也可以從文件讀數(shù)據(jù).

B)打開當(dāng)前目錄下的文件l.txt,但只能向文件寫入數(shù)

據(jù),不能從文件讀取數(shù)據(jù).C)打開當(dāng)前目錄下的文件

l.txt,但不能向文件寫入數(shù)據(jù),只能從文件讀取數(shù)據(jù).D)

以上說法都不對二7,應(yīng)用程序的main方法中有以下

語句,則輸出的結(jié)果是(,Stringintintint

s="12345#aaa#bbb#67890";n=s.indexOf("#");

k=s.indexOf("#",n+l);m=s.indexOf("#",k+l);).

Strings2=s.substring(m+l);System.out.println(s2);A)

123456B)67890C)aaa).D)bbb8,下面程序段執(zhí)行后

b的值是(,Integerinteg=newInteger(9);booleanb=

integinstanceofObject;A)9B)truejavaTestC)1aaa

bbcD)false9,應(yīng)用程序Test.java的源程序如下,在命

令行鍵入:,回車后輸出的結(jié)果是(publicclassTest

{publicstaticvoidmain(Stringargs[]){intint}}A)3

2intB)12C)13D)33).10,應(yīng)用程序的main方法

中有以下語句,則輸出的結(jié)果是(,{2,2},

{2,2,2}};intsum=0;for(inti=O;i<b.length;i++){for(int

j=O;j<b[i].length;j++){sum*=b[i][j];kl=args.length;

k2=args[1].length();"+k2);).

System.out.print(kl+"

第2頁共8頁

}}System.out.println("sum="+sum);A)32B)llC)2D)

3).11,應(yīng)用程序的main方法中有以下語句,則執(zhí)行后

輸出的結(jié)果是(,int[]x={125,21,5,168,98};int

max=x[0];if(x[i]>max)max=x[i];}

System.out.println(max);A)125B)5C)98D)168).12,

程序Test.java編譯運行后輸出的結(jié)果是(,public

classTest{Stringsl="java";publicstaticvoid

main(Stringargs[]){intz=2;Testt=newTest();

System.out.println(t.s1+z);}}A)java2B)2C)沒有輸出

結(jié)果D)java).13,應(yīng)用程序的main方法中有以下語

句,則輸出的結(jié)果是(,Stringsl="0.5",s2="12";double

x=Double.parseDouble(s1);intA)12.5

y=lnteger.parselnt(s2);B)120.5C)12D)"12.5"

System.out.println(x+y);14,下面的程序創(chuàng)建了一個文

件輸出流對象,用來向文件test.txt中輸出數(shù)據(jù),,假

設(shè)程序當(dāng)前目錄下不存在文件test.txt,編譯下面的程

序Test.java后,將該程序運行3次,則文件test.txt

的內(nèi)容是().importjava.io.*;publicclassTest{for(int

i=1;i<x.length;i++){

第3頁共8頁

publicstaticvoidmain(Stringargs[]){try{String

s="ABCDE";byteb[]=s.getBytes();FileOutputStream

file=newFileOutputStreamCtest.txt",true);file.write(b);

file.close();}catch(IOExceptione)

{System.out.println(e.toStringO);}}}A)ABCABCB)

ABCDEC)Testobj)方法D)ABCDEABCDE

ABCDE15,下面那些方法不是接口Collection中已聲

明的方法()?,A)添加元素的add(ObjectB)刪除元素

的remove(Objectobj)方法C)得到元素個數(shù)的

length。方法D)返回迭代器的iterator。方法,迭代器用

于元素遍歷

二,多選題

,1,下面main。方法的定義哪些是正確的()?A)public

staticvoidmain(Stringargs[]){}C)publicstaticvoid

main(String[]args){}B)publicstaticvoidmain(String[])

{}D)publicstaticvoidmain(String[]x){}).

2,線程對象的生命周期中,通常經(jīng)歷下面哪些狀態(tài)(,A)

新建B)運行C)就緒).D)死亡

3,下面說法正確的是(,

A)final可修飾類,屬性(變量),方法.B)abstract可修

飾類,方法.C)抽象方法只有方法頭,沒有方法體.D)

關(guān)鍵字final和abstract不能同時使用.

第4頁共8頁

4,下面關(guān)于java中輸入/輸出流的說法正確的是(,B)

Reader與Writer類用來讀,寫字符流.

).

A)FilelnputStream與FileOutputStream類用讀,寫字

節(jié)流.C)RandomAccessFile既可以用來讀文件,也可

以用來寫文件.D)File類用來處理與文件相關(guān)的操作.

5,下面說法正確的是().,A)如果某公共接口被聲明在

一個源文件中,則接口必須與源文件具有相同名字.B)

如果源文件包含import語句,則該語句必須是除空行

和注釋行外的第一個語句行.C)如果某源文件包含

package語句,則該語句必須是第一個非空,非注釋行.

D)接口中的方法必定是抽象方法,但可以不用關(guān)鍵字

abstract修飾.6,下面關(guān)于Java中異常處理try塊的

說法正確的是(,B)catch塊后必須有finally塊.C)可

能拋出異常的方法調(diào)用應(yīng)放在try塊中.D)對拋出的

異常的處理必須放在try塊中7,下面關(guān)于進(jìn)程,線程

的說法正確的是(,程——多線程,形成多條執(zhí)行線索.

B)線程是比進(jìn)程更小的執(zhí)行單位,是在一個進(jìn)程中獨

立的控制流,即程序內(nèi)部的控制流.線程本身不能自動

運行,棲身于某個進(jìn)程之中,由進(jìn)程啟動執(zhí)行.C)Java

多線程的運行與平臺相關(guān).D)對于單處理器系統(tǒng),多個

線程分時間片獲取CPU或其他系統(tǒng)資源來運行.對

于多處理器系統(tǒng),線程可以分配到多個處理器中,從而

真正的并發(fā)執(zhí)行多任務(wù).8,關(guān)于BufferedReader類的

readLine。方法,以下說法正確的是(),.A)方法

readLine。每次讀取一行數(shù)據(jù).B)方法readLine。每次

讀取一個字節(jié).C)該方法可能拋出lOException異常,

調(diào)用該方法時通常應(yīng)將它放到try塊中,并通過

catch塊處理異常.D)如果讀到流的末尾,該方法返回

的結(jié)果為null.).)?

A)try塊后通常應(yīng)有一個catch塊,用來處理try塊

中拋出的異常.

A)進(jìn)程是程序的一次動態(tài)執(zhí)行過程.一個進(jìn)程在其執(zhí)

行過程中,可以產(chǎn)生多個線

第5頁共8頁

三,程序閱讀題

L閱讀下面的程序,回答問題(問3分,問3分,共6

分).,importjava.awt.*;importjavax.swing.*;public

classTextendsJFrame{publicT()

{super("GridLayout");Container

con=this.getContentPane();con.setLayout(new

GridLayout(2,3));con.add(newJButton("a"));

con.add(newJButton("b"));con.add(newJButton("c"));

con.add(newJButton("d"));con.add(newJButton("e"));

con.add(newJButton("f"));setSize(200,80);

setVisible(true);}publicstaticvoidmain(Stringargs[])

{newT();}}畫圖表示程序運行后的圖形界面.如果

程序通過實現(xiàn)某個接口處理按鈕的動作事件,則該接

口名為何?接口中的方法頭聲明如何?答案:答案:

接口名:ActionListener接口中的方法:publicvoid

actionPerformed(ActionEvente)2,閱讀下面的程序,回

答問題(問3分,問3分,共6分).,.import

java.util.*;{

第6頁共8頁

publicclassT

publicstaticvoidmain(Stringargs[]){Setset=new

TreeSet();set.add(newInteger(lO));set.add(new

Integer(5));set.add(newInteger(15));set.add(new

Integer(5));set.add(newInteger(lO));

System.out.println("size="+set.sizeQ);Iterator

it=set.iterator();");

while(it.hasNext()){System.out.print(it.next()+"}}}

程序運行后輸出的結(jié)果如何?說明java中的集合

(Set接口)和映射(M叩接口)的主要區(qū)別.答案:答案:

size=351015Set接口是不包含重復(fù)元素的集

合;Map接口將鍵映射到值,鍵可以重復(fù),但每個鍵最

多只能映射一個值.3,閱讀下面的程序,并回答問題

(問3分,問3分,共6分).,

importjava.io.*;publicclassTest{publicstaticvoid

main(Stringargs[])throwslOException

{BufferedReaderbuf=newBufferedReader(new

InputStreamReader(System.in));while(true){String

str=buf.readLine();

if(str.equals("quit"))break;intx=lnteger.parselnt(str);

System.out.println(x*x);}}}編譯運行上面的程序:從鍵盤

輸入5,回車后輸出的結(jié)果如何?從鍵盤輸入quit,回車后程

序執(zhí)行情況如何?答案:答案:25終止應(yīng)用程序的運行.

《JAVA程序設(shè)計》期末考試試題(五)程序設(shè)計》

一,單選題

L當(dāng)某一線程正處于休眠狀態(tài),而另一個線程用

Thread類中的interrupt。方,法中斷它時,拋出的異

常類型是(A)lOExceptionC)InterruptedException).B)

RuntimeExceptionD)ClassNotFoundException

,2,下面的程序段的功能是().Filefilel=new

File("d:\\xxx\\yyy\\zzz");filel.mkdirs();A)在當(dāng)前目錄

下生成子目錄:\xxx\yyy\zzzC)在當(dāng)前目錄下生成文件

xxx.yyy.zzzB)生成目錄:e:\xxx\yyy\zzzD)以上說法都

不對).

3,應(yīng)用程序的main方法中有以下語句,則輸出的結(jié)果

是(,Strings="xxxxxxxxxxxxxxx#123#456#zzzzz";

intn=s.indexOf("#");intk=s.indexOf("#H,n+1);

Strings2=s.substring(n+l,k);System.out.println(s2);A)

123456B)123C)xxxxxxxxxxxxxxx).

D)zzzzz

4,關(guān)于下面的程序Test.java說法正確的是(,public

classTest{Stringx="l";inty;

publicstaticvoidmain(Stringargs[]){intz=2;

System.out.println(x+y+z);}}A)3B)102C)12D)程序

有編譯錯誤).

,5,應(yīng)用程序的main方法中有以下語句,則輸出的結(jié)

果是(

第1頁共7頁

int

b[][]={{l,1,1},{2,2},{3});

intsum=0;for(inti=0;i<b.length;i++){for(intj=0;

j<b[i].length;j++){sum+=b[i皿;})

System.out.println("sum="+sum);A)10B)6C)9D)13).

6,應(yīng)用程序的main方法中有以下語句,則執(zhí)行后輸出

的結(jié)果是(,int[]x={125,21,5,168,98};intmin=x[0];

for(inti=l;i<x.length;i++){if(x[i]<min)min=x[i];}

System.out.println(min);A)125B)5C)98D)168).

7,應(yīng)用程序的main方法中有以下語句,則輸出的結(jié)果

是(,Hashtablehashtable=newHashtable();

hashtable.put("100","aaa");hashtable.put("200","bbb");

hashtable.put("300","ccc");

System.out.println(hashtable.get("300").toString()+

hashtable.get("200").toString()+

hashtable.get("100").toStringO);A)aaaB)bbbC)cccD)

cccbbbaaa).

8,以下關(guān)于java異常說法不正確的是(,

A)Throwable類是Java語言中Error類和

Exception類的父類.B)當(dāng)異常對象是Exception類

(或其子類)的實例時,能通過Java虛擬機(jī)或者throw

語句拋出該異常對象,并能通過try...catch...finally

處理.

第2頁共7頁

C)如果只用一個catch塊捕捉多個異常對象,則catch

子句中的參數(shù)類型應(yīng)是所有異常對象的父類.D)以上

說法都不對.9,下面的程序創(chuàng)建了一個文件輸出流對

象,用來向文件test.txt中輸出數(shù)據(jù),假,設(shè)程序當(dāng)前

目錄下不存在文件test.txt,編譯下面的程序Test.java

后,將該程序運行3次,則文件test.txt的內(nèi)容是().

importjava.io.*;publicclassTest{publicstaticvoid

main(Stringargs[]){try{Strings="ABCDE";byte

b[]=s.getBytes();FileOutputStreamfile=new

FileOutputStreamCtest.txt",true);file.write(b);

file.close();}catch(IOExceptione)

{System.out.println(e.toStringO);}}}A)ABCABCB)

ABCDEQTestD)ABCDEABCDEABCDE

10,下面說法不正確的是()?,A)列表(List),集合(Set)和

映射(Map)都是java.util包中的接口.B)List接口是

可以包含重復(fù)元素的有序集合.C)Set接口是不包含

重復(fù)元素的集合.D)Map接口將鍵映射到值,鍵可以

重復(fù),但每個鍵最多只能映射?個值.

二,多選題

1,下面哪些關(guān)鍵字能用來控制對類成員的訪問()?,A)

publicB)protectedC)privateD)default

第3頁共7頁

2,下面關(guān)于Java中異常處理try塊的說法正確的是

(,B)catch塊后必須有finally塊.C)可能拋出異常的

方法調(diào)用應(yīng)放在try塊中.D)對拋出的異常的處理必

須放在try塊中3,線程對象的生命周期中,通常經(jīng)歷

下面哪些狀態(tài)(,A)新建B)運行C)就緒D)死亡).

)?

A)try塊后通常應(yīng)有一個catch塊,用來處理try塊

中拋出的異常.

).

4,定義如下的二維數(shù)組b,下面的說法正確的是(,int

b[][]={{1,2,3},{4,5},{6,7,8}}};A)b.length的值是

3.A)C)b[l][l]的值是5.C)

B)b[l].length的值是3.D)二維數(shù)組b的第一行有

3個元素

5,類B是一個抽象類,類C是類B的非抽象子類,

下列創(chuàng)建對象xl的語句中,正確的是().B)Bxl二

newC();D)Cxl=newB();).A)Bxl=newB();C)C

xl=newC();

6,下面關(guān)于進(jìn)程,線程的說法正確的是(,程—多線

程,形成多條執(zhí)行線索.

A)進(jìn)程是程序的一次動態(tài)執(zhí)行過程.一個進(jìn)程在其執(zhí)

行過程中,可以產(chǎn)生多個線B)線程是比進(jìn)程更小的

執(zhí)行單位,是在一個進(jìn)程中獨立的控制流,即程序內(nèi)部

的控制流.線程本身不能自動運行,棲身于某個進(jìn)程之

中,由進(jìn)程啟動執(zhí)行.C)Java多線程的運行與平臺相關(guān).

D)對于單處理器系統(tǒng),多個線程分時間片獲取CPU

或其他系統(tǒng)資源來運行.對于多處理器系統(tǒng),線程可以

分配到多個處理器中,從而真正的并發(fā)執(zhí)行多任務(wù).7,

下面關(guān)于外部類和內(nèi)部類成員的相互訪問的規(guī)則中,

正確的選項是(,A)內(nèi)部類可以直接訪問外部類的成

員B)外部類可以直接訪問內(nèi)部類的成員C)外部類不

能訪問內(nèi)部類的成員D)外部類可通過創(chuàng)建內(nèi)部類的

實例來訪問內(nèi)部類的成員

).

第4頁共7頁

三,程序閱讀題

1,閱讀下面的程序代碼,并回答問題(問3分,問3

分,共6分).,

Stringsi=newString("abcde");Strings2=new

String("abcde");booleanbl=sl.equals(s2);booleanb2=

sl==s2;System.out.print(bl+""+b2);

程序段執(zhí)行后,在命令行的輸出結(jié)果如何?解釋輸出⑴

的結(jié)果的原因?答案:答案:truefalseequals方法比

較兩個字符串的內(nèi)容是否相等;運算符"=="判斷兩個

對象是否指向同一個引用,即是否為同一個對象.2,閱

讀下面的程序,并回答問題(問3分,問3分,共6

分).,

importjava.io.*;publicclassTest{publicstaticvoid

main(Stringargs[])throwslOException

{BufferedReaderbuf=newBufferedReader(new

InputStreamReader(System.in));while(true){Stringstr

=buf.readLine();if(str.equals("quit"))break;int

x=lnteger.parselnt(str);System.out.println(x*x);}}}

編譯運行上面的程序:從鍵盤輸入10,回車后輸出的

結(jié)果如何?從鍵盤輸入exit,回車后程序能正確執(zhí)行

嗎?為什么?答案:答案:100不能;因為方法

Integer.parselnt(str)不能將字符串"exit"轉(zhuǎn)化為整數(shù),拋

出異常.

第5頁共7頁

3,寫出下面的程序編譯,運行后的結(jié)果(6分).,

publicclassTest{publicstaticvoidmain(Stringargs[])

{newStudent("TomH,'m',90,88);newStudent("Jack",

'm',66,89);newStudent("Mary",'f,76,86);

System.out.println("name\tsex\tchinese\tenglish");

Student.print();}}

classStudent{protectedprotectedprotectedprotected

protectedStringcharintintname;sex;Chinese;english;

Studentnext;

staticStudentlist;

Student(Stringname,charsex,intChinese,intenglish)

=name;this.sex=sex;this.chinese=chinese;

this.english=english;this.next=list;list=this;}staticvoid

print(){Studentfriend=list;if(friend==null)

System.out.println("Thelistisempty.");else

{do{System.out.println(friend.toStringO);

第6頁共7頁

friend=friend.next;}while(friend!=null);}}public

StringtoString(){returnnew

String(name+"\t"+sex+"\t"+chin

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論