您好,欢迎访问三七文档
Java测试题(C卷)一、单选题(每小题2分,共40分)1.下列语句执行后,变量a、c的值分别是()。intx=182;inta,c;c=x/100;a=x%10;A)1,2B)2,1C)1.82,2D)100,822.下面哪个表达式可用得到x和y的最大值()?A)xy?y:xB)xy?y:xC)xy?(x+y):(x-y)D)x==y?y:x;3.应用程序的main方法中有以下语句,则输出的结果是()。Strings1=0.5,s2=12;doublex=Double.parseDouble(s1);inty=Integer.parseInt(s2);System.out.println(x+y);A)12.5B)120.5C)12D)“12.5”4.下列程序段执行后的结果是()。Strings=newString(abcdefg);for(inti=0;is.length();i+=2){System.out.print(s.charAt(i));}A)acegB)ACEGC)abcdefgD)abcd5.下列语句序列执行后,k的值是()。intx=2,y=5,k=0;switch(x%y){case0:k=x+y;break;case1:k=x-y;break;case2:k=x*y;default:k=x/y;break;}System.out.println(k);A)2B)5C)10D)06.应用程序的main方法中有以下语句,则输出的结果是()。Strings1=newString(AAA);Strings2=newString(AAA);booleanb1=s1.equals(s2);booleanb2=(s1==s2);System.out.print(b1++b2);A)truefalseB)falsetrueC)truetrueD)falsefalse7.下面是findSum(intm,intn)方法的定义,方法调用findSum(1,4)的返回结果是()。intfindSum(intm,intn){intsum=0;for(inti=m;i=n;i++){sum+=i;}returnsum;}A)1B)4C)5D)108.下面程序段执行后b的值是()。Stringstr=java;booleanb=strinstanceofString;A)0B)trueC)1D)false9.以下定义一维数组的语句中,正确的是()A)inta[5]B)inta[]=new[5];C)inta[];B)inta[]={1,2,3,4,5};10.假设类A有构造方法A(inta),则在类A的其它构造方法中调用该构造方法的语句为()A)A(x)B)this.A(x)C)this(x)D)super(x)11.关于成员方法和类方法的说法,以下描述正确的是()A)成员方法只能访问成员变量B)类方法可以访问成员变量,也可以访问类变量C)类方法只能通过类名调用D)成员方法只能通过对象调用12.下列关于继承的说法哪个是正确的?A)子类只继承父类public方法和属性B)子类继承父类的非私有属性和方法C)子类直接承父类的方法,而不继承父类的属性D)子类将继承父类的所有属性和方法13.下列关于抽象类的说服正确的是A)某个抽象类的父类是抽象的,则这个子类必须重载父类的所有抽象方法B)接口和抽象类是同一回事C)绝对不能用抽象类去创建对象D)抽象类中部可以有非抽象方法14.下面代码,classFoo{StringdoStuff(intx){returnhello;}}classBarextendsFoo{//addmethodhere}哪个方法放在Foo的子类中是不合法的A.StringdoStuff(intx){returnhello;}B.intdoStuff(intx){return42;}D.StringdoStuff(Strings){returnHello;}E.intdoStuff(Strings){return42;}instantiateachild15.下列哪些说法是正确的?A.IOException必须被捕获或抛出B.java语言声明变量的同时必须赋值C.java语言不允许同时继承一个类并实现一个接口D.垃圾收集可被随时强制执行16.为访问文件你已创建了一个线程(threads)。你要此线程在其他线程访问此文件时等待。你将如何做到这点?A.使用sleep()方法,让此线程停止特定的时间间隔。B.使用yield()方法降低其优先级,使此线程不会被干扰C.使用synchronized关键字和与其他线程通信的wait()和notify()方法。D.使用带sleep()和notifyAll()方法的循环。17.以下代码:classMessage{Stringmailmessage;}...Messagedata;SockettoServer=newSocket(172.17.96.34,1001);...ObjectOutputStreamout=newObjectOutputStream(toServer.getOutputStream());out.write(data);在执行上面代码时引发异常NotSerializableException。引发此异常的可能原因是什么?A.没有连上服务器B.此消息类(Message)声明不充分C.输出套接字可能被破坏D.写出到此套接字,不应使用ObjectOutputStream18.下面代码段classHasStatic{privatestaticintx=100;publicstaticvoidmain(String[]args){HasStatichs1=newHasStatic();hs1.x++;HasStatichs2=newHasStatic();hs2.x++;hs1=newHasStatic();hs1.x++;HasStatic.x--;System.out.println(hs1.x+hs2.x);}}输出的结果是:A.100100B.202C.203D.20419.java访问数据库的包是:___________。A.java.ioB.java.jdbcC.java.netD.java.sql20.下面代码段,classDog{Dog(Stringname){}}classBeagleextendsDog{}如果类Beagle继承Dog,并且Beagle类只有一个构造器,下面哪个是Beagle类合法的构造器?A.Beagle(){}B.Beagle(){super();}C.Beagle(){super(fido);}D.Noconstructor,allowthedefaultConstructor二、多选题(每题2分,共20分,错选、漏选不得分)1.下面的说法正确的是()。A)Java语言是面向对象的、解释执行的网络编程语言。B)Java语言具有可移植性,是与平台无关的编程语言。C)Java语言可对内存垃圾自动收集。D)Java语言编写的程序虽然是“一次编译,到处运行”,但必须要java的运行环境。2.下面main()方法的定义哪些是正确的()?A)publicstaticvoidmain(Stringargs[]){}B)publicstaticvoidmain(String[]){}C)publicstaticvoidmain(String[]args){}D)publicstaticvoidmain(String[]x){}3.定义变量如下:charc='w';inti=8;longL=15;floatf=8.9f;以下赋值语句正确的是()。A)i=c+i;B)c=c+i;C)L=f+L;D)f=i+L+f;4.面向对象程序设计的基本特征是()。A)抽象B)封装C)继承D)多态5.下面关于类的说法正确的是()。A)类是Java语言中的一种复合数据类型。B)类中包含数据变量和方法。C)类是对所有具有一定共性的对象的抽象。D)Java语言的类只支持单继承。6.编译并运行下面的程序,运行结果为().publicclassT1{publicstaticvoidmain(String[]args){T1a=newT1();a.method(8);a.method(1.2f);}voidmethod(floati){System.out.println(float:+i);}voidmethod(longi){System.out.println(long:+i);}}A)程序有编译错误,因为两个method()方法必须定义为静态(static)的。B)程序可以编译运行,输出结果为:long:8float:1.2C)程序可以编译运行,输出结果为:float:1.2long:8D)程序中定义的两个参数不同的method方法称为方法重栽。7.编译并运行下面的程序,运行结果为().publicclassA{publicstaticvoidmain(String[]args){Aa=newB();a.test();}voidtest(){System.out.print(A);}}classBextendsA{voidtest(){super.test();System.out.println(B);}}A)子类B定义了与父类A中同名的方法test,java中称为方法的覆盖。B)代码可以编译运行,并输出结果:AB。C)代码可以编译运行,并输出结果:A。D)子类B定义了与父类A中同名的方法test,java中称为方法的重载。8.下面哪个说法正确()?A)如果某公共的接口被声明在一个源文件中,则接口必须与源文件具有相同的名字。B)如果源文件包含import语句,则该语句必须是除空行和注释行外的第一个语句行。C)如果某源文件包含package语句,则该语句必须是第一个非空、非注释行。D)接口中的方法必定是抽象方法,但可以不用关键字abstract修饰。9.final修饰符可以用于修饰:A)类B)变量C)抽象类D)方法10.以下不是InputStream的子类的是:A)FileInputStreamB)FileReaderC)DataInputStreamD)RandomAccessFile三、填空题(每题2分,共10分)1.下面代码用于求数组中的最大值,请将代码补充完整int[]x={122,33,55,678,-987};intmax=__________;//用于存储最大值的变量for(inti=1;ix.length;i++){if(_________)max=x[i];}System.out.println(max);2.子类重写了父类方法,把子类对象赋值给父类对象,执行时会调用____________(父类/子类选一)的方法,这是面向对象的____________性。3.JavaSwing组件中,下拉框使用组件类____________,使用监听器类___________________的对象来监听按被点击事件。4.Map对象中存入值使用_________方法,取出值使用_________方法。5.为了防止多个线程访问共享资源时产生的读写错误(数据不一致),需要对访问共享资源的代码进行_______________,使用关键字_________________。三、简答题(每题4分,共20分)1.对象成员被public、protected、默认、private修饰符修饰的区别?2.final,finally,finalize的区别?3.IO流分两类,分别是哪两类,每一类分别说出两个java类。4.TCP通信与UDP通信的区别,说出三个点。5.Swing事件模型的三个组成部分是什么?他们是如何工作的(工作原理)?四、程序题(每题5分,共10分)1.编程计算出所有水仙花数并输出(水仙花数为三位数,每一位的立方的和等于它本身)。2.编写一个模拟卖
本文标题:Java试题C
链接地址:https://www.777doc.com/doc-2881491 .html