您好,欢迎访问三七文档
Java试题(三)一、选择1.给定下面的代码片段:1)Stringstr=null;2)if((str!=null)&&(str.length()10)){3)System.out.println(morethan10);4)}5)elseif((str!=null)&(str.length()5)){6)System.out.println(lessthan5);7)}8)else{System.out.println(end);}哪些行会导致错误?Aline1Bline2Cline5Dline82.下面哪种注释方法能够支持javadoc命令:A/**...**/B/*...*/C//D/**...*/3.欲编写如下图的一个界面,用于显示用户指定的图像:如果在区域A中只能放置一个AWT组件,从各组件的本来功能角度考虑,最好使用哪种组件:ATextAreaBPanelCAppletDCanvas4.界面如上题所示。若Button1的功能是:点击后弹出一个用于输入的界面,获取用户想要显示的图像文件名,则该界面最好是(从编程简单和程序不易出错的角度考虑):A模式(Modal)DialogB非模式(None-modal)DialogCFileDialogDFrame5.界面如上题所示。如果在A区域使用某种AWT组件(java.awt.Component的子类)来负责绘制图像,则绘图的语句最好应放在该组件的哪个方法中(考虑到应用程序和Java虚拟机的AWT线程都会要求重画该组件)?A构造方法Bpaint(Graphicsg)Cupdate(Graphicsg)Drepaint()6.下面关于Applet的说法正确的是AApplet也需要main方法BApplet必须继承自java.awt.AppletCApplet能访问本地文件DApplet程序不需要编译7.看下面一段程序:classAclass{voidgo(){System.out.println(Aclass);}}publicclassBclassextendsAclass{voidgo{System.out.println(Bclass);}publicstaticvoidmain(Stringargs[]){Aclassa=newAclass();Aclassa1=newBclass();a.go();a1.go();}以上程序运行结果是:AAclassAclassBBclassBclassCAclassBclassDBclassAclass8.下列关于Java线程的说法那些是正确的()A每一个Java线程可以看成由代码、一个真实的CPU以及数据三部份组成。B创建线程的两种方法中,从Thread类中继承的创建方式可以防止出现多父类问题。CThread类属于java.util程序包。D以上说法无一正确。9.看以下程序:booleana=false;booleanb=true;booleanc=(a&&b)&&(!b);intresult=c==false?1:2;这段程序执行完后,c与result的值是:Ac=false;result=1;Bc=true;result=2;Cc=true;result=1;Dc=false;result=2;10.运行下列程序,会产生什么结果publicclassXextendsThreadimplementsRunable{publicvoidrun(){System.out.println(thisisrun());}publicstaticvoidmain(Stringargs[]){Threadt=newThread(newX());t.start();}}A第一行会产生编译错误B第六行会产生编译错误C第六行会产生运行错误D程序会运行和启动11.指出下列程序的运行结果inti=9;switch(i){default:System.out.println(default);case0:System.out.println(zero);break;case1:System.out.println(one);case2:System.out.println(two);}AdefaultBdefault,zeroCerrordefaultclausenotdefinedDnooutputdisplayed那个12.运行下列程序,会产生什么结果:classOuter1{privateinta;voidfoo(doubled,finalfloatf){Strings;finalbooleanb;classInner{voidmethodInner(){System.out.println(intheInner);}}}publicstaticvoidmain(Stringargs[]){Outer1me=newOuter1();me.foo(123,123);System.out.println(outer);}}AintheInnerouterBouterCintheInnerD编译不通过二、填空题1.Java中类成员的限定词有以下几种:private,public,_____________,_____________。其中,_____________的限定的范围最大。2.Java中所有类都是类_____________的子类。3.请填出在java.lang包中与下列基本数据类型相对应的封装类:float:java.lang.Float,char:_____________,boolean:_____________。4.请写出下面程序的运行结果。publicclassTestextendsTT{publicvoidmain(Stringargs[]){Testt=newTest(Tom);}publicTest(Strings){super(s);System.out.println(Howdoyoudo?);}publicTest(){this(IamTom);}}classTT{publicTT(){System.out.println(Whatapleasure!);}publicTT(Strings){this();System.out.println(Iam+s);}}结果:_____________5.给定下面的未完成的代码片断:publicclassExample{intx,y;publicExample(inta){…x=a;}publicExample(inta,intb){//和上面一个参数的构造方法做同样的操作,包括赋值x=ay=b;}}如果要用最简捷的一行代码实现//和上面一个参数的…注释所指出的功能,请写出你认为最合适的一行代码:_____________6.如果有一个类MyFrame是Frame的子类,能够被不同包中的类所使用,同时又能够为线程提供运行代码(run()方法),请写出该类的声明头。你的解答:_____________三、编程题1.编写一个程序用选择法对数组a[]={20,10,50,40,30,70,60,80,90,100}进行由大到小的排序。2.使用socket编写一个服务器端程序,服务器端程序在端口8888监听,如果它接到客户端发来的hello请求时会回应一个hello,对客户端的其他请求不响应。3.编写一个应用程序,创建三个线程分别显示各自的时间。参考答案:一、选择题答案选择第1题C选择第2题D选择第3题D选择第4题C选择第5题B选择第6题B选择第7题C选择第8题D选择第9题A选择第10题A选择第11题B选择第12题B二、填空题答案填空第1题protected;default;public填空第2题Object填空第3题java.lang.Character;java.lang.Boolean填空第4题Whatapleasure!IamTomHowdoyoudo?填空第5题this(a)填空第6题publicclassMyFrameextendsFrameimplementsRunnable三、编程题答案编程第1题importjava.io.*;publicclassSelectSort{publicstaticvoidmain(Stringargs[]){inta[]={20,10,50,40,30,70,60,80,90,100};inttemp;for(inti=0;ia.length-1;i++)for(intj=i+1;ja.length;j++){if(a[i]a[j]){temp=a[i];a[i]=a[j];a[j]=temp;}}for(intk=0;ka.length;k++){System.out.println(a[+k+]:+a[k]);}}}编程第2题importjava.io.*;importjava.net.*;publicclassHelloServer{publicstaticvoidmain(Stringargs[])throwsIOException{ServerSocketserver=null;server=newServerSocket(8888);SocketClientSocket=null;ClientSocket=server.accept();Stringline;BufferedReaderis=newBufferedReader(newInputStreamReader(ClientSocket.getInputStream()));PrintWriteros=newPrintWriter(ClientSocket.getOutputStream());while(true){line=is.readLine();if(line.equals(hello)){os.println(hello);os.flush();}}}}编程第3题importjava.util.*;importjava.text.*;classThreeTimeThreadextendsThread{publicThreeTimeThread(Stringstr){super(str);}publicvoidrun(){while(true){SimpleDateFormatformatter=newSimpleDateFormat(yyyy.MM.ddG'at'hh:mm:ssz);DatecurrentTime=newDate();try{sleep(1000);}catch(Exceptione){}StringdateString=formatter.format(currentTime);System.out.println(getName()+:+dateString);}}publicstaticvoidmain(Stringargs[])throwsException{newThreeTimeThread(first).start();newThreeTimeThread(second).start();newThreeTimeThread(third).start();}}
本文标题:练习3及答案
链接地址:https://www.777doc.com/doc-2057585 .html