Java考試復(fù)習(xí)題及答案_第1頁
Java考試復(fù)習(xí)題及答案_第2頁
Java考試復(fù)習(xí)題及答案_第3頁
Java考試復(fù)習(xí)題及答案_第4頁
Java考試復(fù)習(xí)題及答案_第5頁
已閱讀5頁,還剩22頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

Java練習(xí)題一、選擇題(每題1分,共30分)1、以下程序的運(yùn)行結(jié)果是:publicclassIncrement{publicstaticvoidmain(Stringargs[]){intc;c=2;System.out.println(c);System.out.println(c++);System.out.println(c);}}A:A.222B:B.233C:C.223D:D.3442、以下關(guān)于繼承的敘述正確的是A:在Java中類只允許單一繼承B:在Java中一個(gè)類只能實(shí)現(xiàn)一個(gè)接口C:在Java中一個(gè)類不能同時(shí)繼承一個(gè)類和實(shí)現(xiàn)一個(gè)接口D:在Java中接口只允許單一繼承3、關(guān)于以下程序段,正確的說法是1.Strings1=”abc”+”def”;2.Strings2=newString(s1);3.if(s1==s2)4.System.out.println(“==succeeded”);5.if(s1.equals(s2))6.System.out.println(“.equals()succeeded”);A:行4與行6都將執(zhí)行B:行4執(zhí)行,行6不執(zhí)行C:行6執(zhí)行,行4不執(zhí)行D:行4、行6都不執(zhí)行4、應(yīng)用程序的main方法中有以下語句,則執(zhí)行后輸出的結(jié)果是()。int[]x={125,21,5,168,98};intmin=x[0];for(inti=1;i<x.length;i++){ if(x[i]<min) min=x[i];}System.out.println(min);A:125B:5C:98D:1685、下面程序中類ClassDemo中定義了一個(gè)靜態(tài)變量sum,分析程序段的輸出結(jié)果。classClassDemo{publicstaticintsum=1;publicClassDemo(){sum=sum+5;}}publicclassClassDemoTest{publicstaticvoidmain(Stringargs[]){ClassDemodemo1=newClassDemo();ClassDemodemo2=newClassDemo();System.out.println(demo1.sum);}}A:0B:5C:11D:26、能夠支持javadoc命令的注釋語句是A:/**...//B:/*...*/C://D:/**...*/7、File類是IO包中唯一表示磁盤文件信息的對象,它定義了一些與平臺無關(guān)的方法來操縱文件。通過調(diào)用File類提供的各種方法,我們能夠創(chuàng)建、刪除文件、重命名文件、判斷文件的讀寫權(quán)限及是否存在,設(shè)置和查詢文件的最近修改時(shí)間等。下面的代碼片段實(shí)現(xiàn)的是什么功能?Filefile=newFile("C:\\test.dat");if(file.exists()){file.delete();}A:創(chuàng)建C:\test.dat。B:刪除C:\test.dat。C:打開C:\test.dat文件輸出流。D:移動(dòng)C:\test.dat8、char類型的取值范圍是A:2-7~27-1B:0~216-1C:-215~215-1D:0~28-19、以下關(guān)于java異常說法不正確的是()。A:Throwable類是Java語言中Error類和Exception類的父類。B:當(dāng)異常對象是Exception類(或其子類)的實(shí)例時(shí),可以使用throw語句拋出該異常對象C:如果只用一個(gè)catch塊捕捉多個(gè)異常對象,則catch子句中的參數(shù)類型應(yīng)是所有異常對象的父類。D:以上說法都不對。10、Java語言的類間的繼承關(guān)系是()A:多重的B:單重的C:線程的D:不能繼承11、下列屬于合法的Java標(biāo)識符是A:_catB:5booksC:+staticD:-3.1415912、Java中A:一個(gè)子類可以有多個(gè)父類,一個(gè)父類也可以有多個(gè)子類B:一個(gè)子類可以有多個(gè)父類,但一個(gè)父類只可以有一個(gè)子類C:一個(gè)子類可以有一個(gè)父類,但一個(gè)父類可以有多個(gè)子類D:上述說法都不對13、聲明成員變量時(shí),如果不使用任何訪問控制符(public,protected,private),則以下哪種類型的類不能對該成員進(jìn)行直接訪問A:同一類B:同一包中的子類C:同一包中的非子類D:不同包中的子類14、有以下方法的定義,請選擇該方法的返回類型ReturnTypemethod(bytex,doubley){return(short)x/y*2;}A:byteB:shortC:intD:double15、關(guān)于以下application的說明,正確的是1.classStaticStuff2.{3.staticintx=10;4.static{x+=5;}5.publicstaticvoidmain(Stringargs[])6.{7.System.out.println(“x=”+x);8.}9.static{x/=3;}10.}A:4行與9行不能通過編譯,因?yàn)槿鄙俜椒头祷仡愋虰:9行不能通過編譯,因?yàn)橹荒苡幸粋€(gè)靜態(tài)初始化器C:編譯通過,執(zhí)行結(jié)果為:x=5D:編譯通過,執(zhí)行結(jié)果為:x=316、有如下程序段:inta=b=5;Strings1="祝你今天考出好成績!";Strings2=s1;則表達(dá)式a==b與s2==s1的結(jié)果分別是:A:true與trueB:false與trueC:true與falseD:false與false17、下列關(guān)于線程優(yōu)先級的說法中,正確的是A:線程的優(yōu)先級是不能改變的B:線程的優(yōu)先級是在創(chuàng)建線程時(shí)設(shè)置的C:在創(chuàng)建線程后的任何時(shí)候都可以設(shè)置D:B和C18、下面語句在編譯時(shí)不會(huì)出現(xiàn)警告或錯(cuò)誤的是A:floatf=3.14;B:charc=”c”;C:Booleanb=null;D:inti=10.0;19、下列關(guān)于Java線程的說法那些是正確的()A:每一個(gè)Java線程可以看成由代碼、一個(gè)真實(shí)的CPU以及數(shù)據(jù)三部份組成。B:創(chuàng)建線程的兩種方法中,從Thread類中繼承的創(chuàng)建方式可以防止出現(xiàn)多父類問題。C:Thread類屬于java.util程序包。D:以上說法無一正確。20、下面的程序段的功能是()。Filefile1=newFile("d:\\xxx\\yyy\\zzz");file1.mkdirs();A:在當(dāng)前目錄下生成子目錄:\xxx\yyy\zzzB:生成目錄:e:\xxx\yyy\zzzC:在當(dāng)前目錄下生成文件xxx.yyy.zzzD:以上說法都不對21、欲構(gòu)造ArrayList類的一個(gè)實(shí)例,此類繼承了List接口,下列哪個(gè)方法是正確的?A:ArrayListmyList=newObject();B:ListmyList=newArrayList();C:ArrayListmyList=newList();D:ListmyList=newList();22、下面說法不正確的是A:一個(gè)子類的對象可以接收父類對象能接收的消息;B:當(dāng)子類對象和父類對象能接收同樣的消息時(shí),它們針對消息產(chǎn)生的行為可能不同;C:父類比它的子類的方法更多;D:子類在構(gòu)造函數(shù)中可以使用super()來調(diào)用父類的構(gòu)造函數(shù);23、下列最終屬性i的定義中,正確的是()。A:staticfinalinti=100;B:finalinti=1.2;C:finali='w';D:finalchari;24、下面聲明數(shù)組的寫法錯(cuò)誤A:Ainta[];B:B:int[]a;C:Cint[3][]a;D:D;int[][3]a;25、Java編程所必須的默認(rèn)引用包為A:javsys包B:java.lang包C:java.util包D:以上都不是26、對于下列代碼:publicclassSample{longlength;publicSample(longl){length=l;}publicstaticvoidmain(Stringarg[]){Samples1,s2,s3;s1=newSample(21L);s2=newSample(21L);s3=s2;longm=21L;}}下列哪些表達(dá)式返回值為'true'?A:s1==s2;B:s2==s3;C:m==s1;D:s1.equals(m)27、設(shè)有定義inti=6;,則執(zhí)行以下語句后,i的值為()。i+=i-1;A:10B:121C:11D:10028、有整型數(shù)組:int[]x={12,35,8,7,2};,則調(diào)用方法Arrays.sort(x)后,數(shù)組x中的元素值依次是()A:2781235B:1235872C:3512872D:871235229、有如下代碼段:1)2){if(unsafe()){//dosomething…}3)elseif(safe()){//dotheother…}4)}其中,方法unsafe()將拋出IOException,請問可將以下哪項(xiàng)填入第1行?A:publicIOExceptionmethodName()B:publicvoidmethodName()C:publicvoidmethodName()throwIOExceptionD:publicvoidmethodName()throwsIOException30、給出下面代碼:1)classParent{2}privateStringname;3}publicParent(){}4}}5)publicclassChildextendsParent{6}privateStringdepartment;7}publicChild(){}8}publicStringgetValue(){returnname;}9}publicstaticvoidmain(Stringarg[]){10}Parentp=newParent();11}}12}}那些行將引起錯(cuò)誤()A:第3行B:第6行C:第7行D:第8行二、填空題(共10分)31、在空白處填上合適的語句。PublicclassServerTimedOutExceptionextendsException{privateintport;publicServerTimedOutException(Stringmessage,intport){super(message);this.port=port;}publicintgetPort(){returnport;}}classClient{//在下行空白出填上聲明拋棄ServerTimedOutException例外的語句publicvoidconnectMe(StringserverName)______(1)_______{intsuccess;intportToConnect=80;success=open(serverName,portToConnect);if(success==-1){/*在下行空白處填上拋出ServerTimedOutException例外的語句*/________(2)_______}}}32、下面是一個(gè)實(shí)現(xiàn)了Runnable接口的小程序,程序通過多線程實(shí)現(xiàn)了以下功能:從1開始,每個(gè)兩秒鐘顯示下一個(gè)連續(xù)的自然數(shù),顯示到直到10后結(jié)束。請根完成程序填空。publicclassTest{publicvoidmain(Stringargs[]){Aa=newA();Threadt;t=___(1)___;//創(chuàng)建線程對象t.start();}}publicclassA_____(2)_____Runnable{publicvoidrun(){intcounter=0;while(counter<10){counter++;try{Thread.sleep(2000);}catch(InterruptedExceptione){}System.out.println(counter);}}}33、下面的程序的功能是從1~36的整數(shù)中隨機(jī)選取7個(gè)數(shù):第1次隨機(jī)選擇1~36中的一個(gè)數(shù),第2次從剩下的35個(gè)數(shù)(第1次選中的數(shù)不包括其中)中隨機(jī)選擇一個(gè)數(shù),…,重復(fù)這個(gè)過程,直到選中7個(gè)整數(shù)。請完成程序填空。importjava.util.*;publicclassSelect7From36{publicstaticvoidmain(String[]args){Randomrd=newRandom();//創(chuàng)建動(dòng)態(tài)數(shù)組ArrayListallNum=newArrayList(); //創(chuàng)建有7個(gè)元素的Integer數(shù)組Integerresult[]=____(1)____; intx;for(inti=1;i<=36;i++){allNum.add(newInteger(i));}for(inti=0;i<=6;i++){x=rd.nextInt(36-i)+1;result[i]=(Integer)allNum.get(x);allNum.remove(x);}for(inti=0;i<result.length;i++){System.out.print(____(2)____+"");}}}34、下列程序的功能是:輸入一個(gè)姓名,程序運(yùn)行后,輸出“姓名Welcomeyou!”。例如,輸入“張三”,則輸出“張三Welcomeyou!”。請?jiān)谙旅鏅M線處填入正確的方法名,使程序可以正確運(yùn)行。Importjava.awt.*;importjava.awt.event*;publicclassWelcomeYou{publicstaticvoidmain(Stringargs[]){newFrameInOut();}classFrameInOutextendsFrameimplementsActionListener{Labelprompt;TextFieldinput,output;Buttonbtnn;voidFramInOut(){prompt=newLabel(″Pleaseinputyourname″);input=newTextField(10);output=newTextField(25);btnn=newButton(″Closs″);_____________________(newFlowLayout());//設(shè)置布局對象add(prompt);add(input);add(output);add(btnn);input.addActionListener(this);btnn.addActionListener(this);setSize(300200);validate();}publicvoidactionPerformed(ActionEvente)//事件處理接口方法{if(______________________==input)//獲得事件源output.setText(________________+″Welcomeyou!″);//在output中輸出字符串else{dispose();Systemexit(0)}}}35、下面是一個(gè)JavaApplication的主類的定義,其功能是輸出所有命令行參數(shù)。importjava.io.*;publicclassMyClass{publicstaticvoidmain(Stringargs[]){if(args.length!=___)for(inti=0;i<args.length;i++)System.out.println(___________);elseSystem.out.println("沒有命令行參數(shù)");}}36、下面是一個(gè)類的定義:publicclass____________{intx,y;Myclass(inti,_______)//構(gòu)造函數(shù){x=i;y=j;}}37、Applet程序:有2個(gè)復(fù)選框,其名稱為“玩?!焙汀皩W(xué)習(xí)”,根據(jù)選擇情況,分別顯示“我就喜歡玩?!?,“我只喜歡學(xué)習(xí)”,“兩個(gè)我都喜歡”。importjava.applet.Applet;importjava.awt.*;importjava.awt.event.*;publicclasstestCheck__________________________//定義類testCheck{Checkboxc1,c2;Strings="";publicvoidinit(){c1=newCheckbox("玩耍");c1.addItemListener(this);add(c1);c2=newCheckbox("學(xué)習(xí)");c2.addItemListener(this);add(c2);}______________________________________(ItemEvente) //Checkbox選擇事件響應(yīng)處理方法{if(c1.getState()&c2.getState()) //如果兩個(gè)都選擇s="玩耍和學(xué)習(xí)我都喜歡";elseif(c1.getState())s="我就喜歡玩耍";elseif(c2.getState())s="我只喜歡學(xué)習(xí)";elses="";repaint(); //重畫}publicvoidpaint(Graphicsg){________________________________ //在(20,80)處顯示字符串s}}對應(yīng)HTML文件<html><appletcode="testCheck.class"width=300height=200></applet></html>38、下列程序的功能是判斷某一年是否為閏年。請?jiān)跈M線處填入適當(dāng)內(nèi)容,使程序能夠正確運(yùn)行。importjava.io.*;publicclassLeapYear{publicstaticvoidmain(Stringarge[])throwsIOException{InputStreamReaderir;BufferedReadwein;ir=newInputStreamReader(Systemin);in=newBufferedReader(ir);SystemOutprintln(″輸入年份是:″)Strings=_______(1)________intyear=IntegerparseInt(s);if(____________(2)___________){Systemoutprintln(″″+year+″年是閏年?!?}else{Systemoutprintln(″″+year+″年不是閏年?!?}}}39、下面是一個(gè)小程序的主類myprogram的定義,其中A、B是該主類所在源程序中已定義的另兩個(gè)類的類名:importjavaawt.*;importjavaapplet.*;publicclassmyprogramextendsApplet//定義小程序的主類{Aa;Bb;public________init(){a=newA();b=_____B();}}40、下列程序中,指定變量b=50為字節(jié)類型,變量f=0.55F為單精度實(shí)型,變量1=0xfffL為64位整型,并將該三個(gè)變量打印輸出.請將程序補(bǔ)充完整.importjava.io.*;publicclassAssign}publicstaticvoidmain(Stringargs[]){_______b=50;_______f=0.55F;_______l=0xfffL;System.out.println("b="+b);System.out.println("f="+f);System.out.println("l="+l);}}三、程序閱讀(共20分)41、現(xiàn)有一個(gè)類定義如下:classstudent{Stringname;intage;intscore=88;student(Stringa1,inta2,inta3){name=a1;age=a3;score=a2;}}在使用該類時(shí),已使用下面語句生成了該類的對象:students1,s2;s1=newstudent("張三",20,33);s2=newstudent();問題:1),s1.age,s1.score的值各是什么?2),s2.age,s2.score的值各是什么?42、閱讀下面的程序代碼,并回答問題((1)問3分,(2)問3分,共6分)。 Strings1=newString("abcde"); Strings2=newString("abcde"); booleanb1=s1.equals(s2); booleanb2=s1==s2; System.out.print(b1+""+b2);(1)程序段執(zhí)行后,在命令行的輸出結(jié)果如何?(2)解釋輸出(1)的結(jié)果的原因?43、閱讀下面的程序,回答以下問題importjava.awt.*;importjava.applet.*;importjava.awt.event.*;publicclassApplet1extendsAppletimplementsActionListener{Labelaa;TextFieldt1;inti=0;publicvoidinit(){aa=newLabel("請輸入一個(gè)整數(shù):");add(aa);t1=newTextField(10);add(t1);t1.addActionListener(this);}publicvoidpaint(Graphicsg){g.drawString("a="+(++i*--i),20,60);g.drawString("i="+(i),20,80);}publicvoidactionPerformed(ActionEvente){i=Integer.parseInt(t1.getText());//轉(zhuǎn)化為整數(shù)repaint();}}問題:1)程序開頭的importjava.applet.*;的含義是什么?2)ActionListener是類還是接口?程序中哪個(gè)方法是ActionListener中的方法,其功能為何?3)若在文本域中輸入6并回車,程序輸出什么?44、設(shè)有數(shù)組定義:intMyIntArray[]={10,20,30,40,50,60,70};則執(zhí)行以下幾個(gè)語句后的輸出結(jié)果是什么。Ints=0;for(intI=0;I<MyIntArray.length;I++)if(I%2==1)s+=MyIntArray[i];System.out.println(s);45、下面是一個(gè)排序的程序:importjava.io.*;publicclassTest56_Sort{publicstaticvoidmain(Stringargs[]){int[]a={42,99,5,63,95,36,2,69,200,96};System.out.println("排序前的數(shù)據(jù)序列:");ShowArray(a);Sort(a);System.out.println("排序后的數(shù)據(jù)序列:");ShowArray(a);}publicstaticvoidSort(int[]x){intw;for(inti=1;i<x.length;i++){for(intj=0;j<x.length-1;j++)if(x[j]>x[j+1]){w=x[j];x[j]=x[j+1];x[j+1]=w;}/*if(i==1||i==2)ShowArray(x);if(i==2)break;*/}}publicstaticvoidShowArray(intb[]){for(inti=0;i<b.length;i++)System.out.print(""+b[i]);System.out.println("");}}問題:如果將方法Sort()中的一對注釋符(/**/)去掉,程序輸出的結(jié)果是什么?46、importjava.awt.*;importjava.applet.*;publicclassTest51`extendsApplet{float[]x={1.2,3.4,5.6,7.8};publicvoidpaint(Graphicsg){ints=0;for(inti=0;i<x.length;i++)s+=(int)x[i];g.drawString(""+s,30,60);}}問題:1)程序的輸出結(jié)果是什么?2)方法paint()中的循環(huán)體s+=(int)x[i];能寫為s+=x[i];嗎?為什么?47、閱讀下面的程序,并回答問題((1)問3分,(2)問3分,共6分)。importjava.io.*;publicclassTest{publicstaticvoidmain(Stringargs[])throwsIOException{BufferedReaderbuf=newBufferedReader(newInputStreamReader(System.in));while(true){Stringstr=buf.readLine();if(str.equals("quit"))break;intx=Integer.parseInt(str);System.out.println(x*x);}}}編譯運(yùn)行上面的程序:(1)從鍵盤輸入10,回車后輸出的結(jié)果如何?(2)從鍵盤輸入exit,回車后程序能正確執(zhí)行嗎?為什么?48、寫出下面的程序編譯、運(yùn)行后的結(jié)果(6分)。publicclassTest{publicstaticvoidmain(Stringargs[]){newStudent("Tom",'m',90,88);newStudent("Jack",'m',66,89);newStudent("Mary",'f',76,86);System.out.println("name\tsex\tchinese\tenglish");Student.print();}}classStudent{protectedStringname;protectedcharsex;protectedintchinese;protectedintenglish;protectedStudentnext;staticStudentlist;Student(Stringname,charsex,intchinese,intenglish){=name;this.sex=sex;this.chinese=chinese;this.english=english;this.next=list;list=this;}staticvoidprint(){Studentfriend=list;if(friend==null)System.out.println("Thelistisempty.");else{do{System.out.println(friend.toString());friend=friend.next;}while(friend!=null);}}publicStringtoString(){returnnewString(name+"\t"+sex+"\t"+chinese+"\t"+english);}}49、閱讀下面的程序,并回答問題((1)問3分,(2)問3分,共6分)。importjavax.swing.*;importjava.awt.*;importjava.awt.event.*;publicclassMenuTestextendsJFrame{JTextAreatheArea;publicMenuTest(){super("MyMenu");ContainercontentPane=this.getContentPane();theArea=newJTextArea();theArea.setText("Thefirstsnowcame,\nHowbeautifulitwas!");theArea.setLineWrap(true);contentPane.add(newJScrollPane(theArea),BorderLayout.CENTER);JMenufontMenu=newJMenu("Font");JMenuItemfontSize=newJMenuItem("Size");fontSize.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente){StringsizeString=JOptionPane.showInputDialog("字號大小");intfontSize=Integer.parseInt(sizeString);theArea.setFont(newFont("楷體_gb2312",Font.PLAIN,fontSize));}});fontMenu.add(fontSize);JMenuItemexit=newJMenuItem("Exit");exit.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente){System.exit(0);}});fontMenu.add(exit);JMenuBarmenuBar=newJMenuBar();setJMenuBar(menuBar);menuBar.add(fontMenu);this.setSize(300,200);this.setVisible(true);}publicstaticvoidmain(String[]args){newMenuTest();}}(1)圖示程序運(yùn)行后的圖形界面。(2)用文字描述點(diǎn)擊菜單項(xiàng)“Size”后,程序的執(zhí)行過程和效果。50、有如下源程序:importjava.awt.*;importjava.applet.*;publicclassTest54extendsApplet{Bb;publicvoidinit(){b=newB('f',87.6f,69.1f);}publicvoidpaint(Graphicsg){g.drawString("序號"+"性別"+"成績1"+"成績2",20,50);b.Print(g);}}classA{staticintn=100;charch;A(){n++;}A(charc){this();ch=c;}voidPrint(Graphicsg){g.drawString(""+n+""+ch,20,70);}}classBextendsA{floats1,s2;B(floatr1,floatr2){s1=r1;s2=r2;}B(charc,floatr1,floatr2){super(c);s1=r1;s2=r2;}voidPrint(Graphicsg){super.Print(g);g.drawString(""+s1+""+s2,40,70);}}問題:該程序的輸出是什么?四、編程題(共40分)51、為了模擬兩個(gè)線程共享數(shù)據(jù),并實(shí)現(xiàn)線程對共享數(shù)據(jù)的同步操作,模擬生產(chǎn)和消費(fèi)的同步。定義SynchronizedBuffer類做為生產(chǎn)線程和消費(fèi)線程的共享數(shù)據(jù)類,類中定義整型緩沖區(qū)buffer,用來存放一個(gè)整數(shù);定義方法set,用來模擬生產(chǎn)過程,即給變量buffer設(shè)置值,該方法由生產(chǎn)線程調(diào)用;定義方法get,用來模擬消費(fèi)過程,即取變量buffer的值,該方法由消費(fèi)線程調(diào)用。生產(chǎn)和消費(fèi)的邏輯要求是:必須先生產(chǎn),然后再消費(fèi)。請完成程序中g(shù)et方法的編寫。publicclassSynchronizedBuffer{ privateintbuffer=-1;privatebooleanoccupiedBuffer=false; /*該方法設(shè)置buffer值,由生產(chǎn)線程調(diào)用,模擬生產(chǎn)過程*/publicsynchronizedvoidset(intvalue){Stringname=Thread.currentThread().getName();while(occupiedBuffer){try{System.err.println(name+"試圖生產(chǎn),但上一次的還沒有消費(fèi)!等待消費(fèi)!");wait();}catch(InterruptedExceptione){e.printStackTrace();}}buffer=value;System.out.println(name+"生產(chǎn)一個(gè)整數(shù):"+buffer);occupiedBuffer=true;notify();}/*編寫get方法得到buffer值,該方法將由消費(fèi)線程調(diào)用,模擬消費(fèi)過程*/……}52、(1)編寫一個(gè)圓類Circle,該類擁有:①一個(gè)成員變量Radius(私有,浮點(diǎn)型);//存放圓的半徑;②兩個(gè)構(gòu)造方法Circle()//將半徑設(shè)為0Circle(doubler)//創(chuàng)建Circle對象時(shí)將半徑初始化為r③三個(gè)成員方法doublegetArea()//獲取圓的面積doublegetPerimeter()//獲取圓的周長voidshow()//將圓的半徑、周長、面積輸出到屏幕(2)編寫一個(gè)圓柱體類Cylinder,它繼承于上面的Circle類。還擁有:①一個(gè)成員變量doublehight(私有,浮點(diǎn)型);//圓柱體的高;②構(gòu)造方法Cylinder(doubler,doubleh)//創(chuàng)建Circle對象時(shí)將半徑初始化為r③成員方法doublegetVolume()//獲取圓柱體的體積voidshowVolume()//將圓柱體的體積輸出到屏幕編寫應(yīng)用程序,創(chuàng)建類的對象,分別設(shè)置圓的半徑、圓柱體的高,計(jì)算并分別顯示圓半徑、圓面積、圓周長,圓柱體的體積。54、 一個(gè)景區(qū)根據(jù)游人的年齡收取不同價(jià)格的門票。請編寫游人類,根據(jù)年齡段決定能夠購買的門票價(jià)格并輸出(規(guī)則:12歲以下20元,12到20歲40元,20到50歲60元,其他35元),然后寫出主類測試該類(類的基本實(shí)現(xiàn))55、應(yīng)用FileInputStream類,編寫應(yīng)用程序,從磁盤上讀取一個(gè)Java程序,并將源程序代碼顯示在屏幕上。(被讀取的文件路徑為:E:/myjava/Hello.java)58、編寫一個(gè)Java應(yīng)用程序,在主線程中有3個(gè)線程zhangWorker,wangWorker和boss,線程zhangWorker和wangWorker分別負(fù)責(zé)在命令行輸出“搬運(yùn)蘋果”和“搬運(yùn)香蕉”,這兩個(gè)線程分別各自輸出20行.每輸出一行信息就準(zhǔn)備休息10秒鐘.但是boss線程負(fù)責(zé)不讓dzhangWorker和wangWorker休息。59、編寫一個(gè)Java應(yīng)用程序,實(shí)現(xiàn)如下功能:(1)隨機(jī)分配給客戶一個(gè)1~100之間的整數(shù)。(2)用戶從鍵盤輸入自己的猜測。(3)程序返回提示信息,提示信息分別是“猜大了”、“猜小了”和“猜對了”。(4)用戶可根據(jù)提示信息再次輸入猜測,直到提示信息是“猜對了”。60、1. 編寫一個(gè)Application程序:判斷一個(gè)數(shù)是否為素?cái)?shù)要求:此數(shù)據(jù)是從命令行參數(shù)得到,然后判斷其是否為素?cái)?shù),如果是,打印“是素?cái)?shù)”,如果不是,則打印“不是素?cái)?shù)”,如果沒有參數(shù)輸入,顯示“請輸入一個(gè)參數(shù)”。

參考答案1、C2、A3、C4、B5、C6、D7、B8、B9、D10、B11、A12、C13、D14、D15、C16、A17、C18、C19、D20、D21、B22、C23、A24、D25、B26、B27、C28、A29、D30、D31、(1)throwsServerTimedException;(2)thrownewServerTimedException(serverName,portName);32、(1)newThread(this) (2)implements33、(1)newInteger[7](2)result[i]34、1setLayout2e.getSources()3input.getText()35、0,args[i]36、Myclass,intj37、1. extendsAppletimplementsItemListener2. publicvoiditemStateChanged3. g.drawstring(s,20,80);38、1in.readLine()2year%4==0&&year%100!=0||year%400==039、void,new40、byte,float,long41、1)="張三",s1.age=33,s1.score=202)=null,s2.age=0,s2.score=8842、(1)truefalse(2)equals方法比較兩個(gè)字符串的內(nèi)容是否相等;運(yùn)算符“==”判斷兩個(gè)對象是否指向同一個(gè)引用,即是否為同一個(gè)對象。43、1)將類Applet引入本程序2)接口,actionPerformed(),功能為:當(dāng)在文本域中按回車鍵時(shí),該方法被調(diào)用,其功能為取文本域中的文本,轉(zhuǎn)換為int型數(shù)據(jù)賦給i,通過repaint()而調(diào)用paint()方法輸出結(jié)果.3)a=42i=644、12045、排序前的數(shù)據(jù)序列:429956395362692009642563953626999962005426336269959699200排序后的數(shù)據(jù)序列:542633626995969920046、1)162)不能,因?yàn)橐蟮慕Y(jié)果為int型,而加數(shù)x[i]是float型,float型不能自動(dòng)轉(zhuǎn)換為int型,所以要強(qiáng)制類型轉(zhuǎn)換。47、(1)100(2)不能;因?yàn)榉椒↖nteger.parseInt(str)不能將字符串“exit”轉(zhuǎn)化為整數(shù),拋出異常。48、namesexchineseenglishMaryf7686Jackm6689Tomm908849、(1)見圖片java01.jpg(2)點(diǎn)擊菜單項(xiàng)“Size”后,彈出下圖所示的文本輸入對話框,輸入一個(gè)整數(shù)后回車,將改變文本區(qū)中文字的大小為該整數(shù)。見圖片java02.jpg50、序號性別成績1成績2101f87.669.151、publicsynchronizedintget(){Stringname=Thread.currentThread().getName();while(!occupiedBuffer){try{System.err.println(name+"試圖消費(fèi),但還沒有生產(chǎn)!等待生產(chǎn)!");wait();}catch(InterruptedExceptione){e.printStackTrace();}}occupiedBuffer=false;System.out.println(name+"消費(fèi)一個(gè)整數(shù):"+buffer);notify();returnbuffer;}52、//ProgrammeNameTestCylinder.javaclassCircle{//定義父類--園類 privatedoubleradius;//成員變量--園半徑 Circle(){//構(gòu)造方法 radius=0.0; } Circle(doubler){//構(gòu)造方法 radius=r; } doublegetPerimeter(){//成員方法--求園周長 return2*Math.PI*radius; } doublegetArea(){//成員方法--求園面積 returnMath.PI*radius*radius; } voiddisp(){//成員方法--顯示園半徑、周長、面積 System.out.println("圓半徑="+radius); System.out.println("圓周長="+getPerimeter()); System.out.println("圓面積="+getArea()); }}classCylinderextendsCircle{//定義子類--圓柱類 privatedoublehight;//成員變量--園柱高 Cylinder(doubler,doubleh){//構(gòu)造方法 super(r); hight=h; } publicdoublegetVol(){//成員方法--求園柱體積 returngetArea()*hight; } publicvoiddispVol(){//成員方法--顯示園柱體積 System.out.println("圓柱體積="+getVol()); }}publicclassTestCylinder{//定義主類publicstaticvoidmain(String[]args){//主程入口CircleCi=newCircle(10.0);//生成園類實(shí)例Ci.disp();//調(diào)用園類的方法CylinderCyl=newCylinder(5.0,10.0);//生成圓柱類實(shí)例Cyl.disp();//調(diào)用父類方法Cyl.dispVol();//調(diào)用子類方法}}54、publicclassTourist{ intage; intticketPrice; publicvoidsetAge(intage){ this.age=age; } publicvoidticket(){ if(age>0&&age<12) ticketPrice=20; elseif(age<20) ticketPrice=40; elseif(age<50) ticketPrice=80; else ticketPrice=35; System.out.println("門票價(jià)格:"+ticketPrice); }}/////importjava.util.Scanner;publicclassTest{ publicstaticvoidmain(String[]args){ Scannerinput=newScanner(System.in); Touristt1=newTourist(); System.out.print("請輸入年齡:"); t1.setAge(input.nextInt()); t1.ticket(); }}55、//ProgrammeNameFISDemo.javaimportjava.io.*;publicclassFISDemo{publicstaticvoidmain(Stringargs[]){byte[]buf=newbyte[2056];try{FileInputStreamfileIn=newFileInputStream("e:/myjava/Hello.java");intbytes=fileIn.read(buf,0,2056);Stringstr=newString(buf,0,bytes);System.out.println(str);}catch(Exceptione){e.printStackTrace();}}58、classShopimplementsRunnable{ThreadzhangWorker,wangWorker,boss;Shop(){boss=newThread(this);////創(chuàng)建boss,Shop對象為boss目標(biāo)對象zhangWorker=newThread(this);////創(chuàng)建zhangWorker,Shop對象為boss目標(biāo)對象wangWorker=newThread(this);////創(chuàng)建wangWorker,Shop對象為boss目標(biāo)對象zhangWorker.setName("張工");wangWorker.setName("王工");boss.setName("老板");}publicvoidrun(){inti=0;if(Thread.currentThread()==zhangWorker){while(true){try{i++;System.out.printf("\n%s已搬運(yùn)了%d箱蘋果\n",zhangWorker.getName(),i);if(i==3)return;Thread.sleep(10000);////zhangWorker休眠10秒(10000毫秒)}

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論