《java100道选择题含答案.docx》由会员分享,可在线阅读,更多相关《java100道选择题含答案.docx(15页珍藏版)》请在课桌文档上搜索。
1、1.以下不可作为java语言标识符的是(D)A)alB)$lC)_1D)112.有一段java应用程序,它的主类名是al,那么保存它的源文件名可以是(八)A)al.javaB)al.classC)al3.整型数据类型中,需要内存空间最少的是(D)D)都对A)shortB)longC)int4.Java类可以作为(C)D)byteA)类型定义机制B)数据封装机制C)类型定义机制和数据封装机制D)上述都不对5 .在创立对象时必须(C)A)先声明对象,然后才能使用对象B)先声明对象,为对象分配内存空间,然后才能使用对象C)先声明对象,为对象分配内存空间,对对象初始化,然后才能使用对象D)上述说法都对
2、6 .在调用方法时,假设要使方法改变实参的值,可以(B)A)用基本数据类型作为参数B)用对象作为参数C)Af11B都对D)A和B都不对7 .Java中(C)A) 一个子类可以有多个父类,一个父类也可以有多个子类B) 一个子类可以有多个父类,但一个父类只可以有一个子类C) 一个子类可以有一个父类,但一个父类可以有多个子类D)上述说法都不对8Java语言具有许多优点和特点,哪个反映了JaVa程序并行机制的特点(B)A)安全性B)多线性C)跨平台D)可移植9. Character流与Byte流的区别是(C)A)每次读入的字节数不同B)前者带有缓冲,后者没有C)前者是字符读写,后者是字节读写D)二者没
3、有区别,可以互换使用10 .以下声明合法的是(D)A、defaultStrings;B、publicfinalstaticnativeintw()Cabstractdoubled;DabstractfinaldoublehyperbolicCosine()11 .关于以下appliCation的说明,正确的选项是(C)123456789classStaticStuffstaticintx=10;staticx+=5;publicstaticvoidmain(Stringargs)(System.out.println(a=t,+x);)staticx/=3;10. A、4行与9行不能通过编译,
4、因为缺少方法名和返回类型B、9行不能通过编译,因为只能有一个静态初始化器C、编译通过,执行结果为:x=5D、编译通过,执行结果为:x=312.关于以下程序代码的说明正确的选项是(D)1. classHasStatic2. privatestaticintx=100;3. publicstaticvoidmain(Stringargs)4. HasStatichsl=newHasStaticf);5. hsl.x+;6. HasStatichs2=newHasStaticf);7. hs2.x+;8. hsl=newHasStaticf);9. hsl.x+;10. HasStatic,X-;1
5、1. System.out.println(ii-f+x);12. )13. )A、5行不能通过编译,因为引用了私有静态变量B、10行不能通过编译,因为X是私有静态变量C、程序通过编译,输出结果为:x=103D、程序通过编译,输出结果为:x=10213.以下选项中循环构造合法的是(C)A、while(inti7)i+;System.out.printlCziiszz+i);)B、intj=3;while(j)SyStem.out.println(jis+j);)C、intj=0;for(intk=0;j+k!=10;j+zk+)System.out.println(rtjis+j+kis”+k
6、);)D、intj=0;doSystem.out.println(is+j+);if(j=3)continueloop;while(jpublicintaMethodUnta,intb)throwsIOException16.关于以下程序段,正确的说法是(C)1. StringSI=abc+def;2. Strings2=newString(si);3. if(sl=s2)4. System.out.println(w=succeeded,);5. if(sl.equals(s2)6. System.out.println(.equals。succeeded,z);A、行4与行6都将执行B、行
7、4执行,行6不执行C、行6执行,行4不执行C、行4、行6都不执行17.Javaapplication中的主类需包含main方法,main方法的返回类型是什么(D)A、intBxfloatC、doubleD、void18.以下哪个方法用于定义线程的执行体(C)A、start()Bxinit()Crun()D、synchronized!)19.A、以下标识符中哪项是不合法的(A)constB、$doubleC、helloD、BigMeaningIessName20. 以下哪个关键字可以用来为对象加互斥锁(D)A、transientBstaticC、serializeD、synchronized21
8、. 在JaVa中,一个类可同时定义许多同名的方法,这些方法的形式参数个数、类型或顺序各不一样,传回的值也可以不一样。这种面向对象程序的特性称为(C)。A、陷藏B、覆盖C、重载D、Java不支持此特性22. 以下关于构造函数的描述错误的选项是(A)A、构造函数的返回类型只能是VOid型。B、构造函数是类的一种特殊函数,它的方法名必须与类名一样。C、构造函数的主要作用是完成对类的对象的初始化工作。D、一般在创立新对象时,系统会自动调用构造函数。23. 以下哪些语句关于JaVa内存回收的说明是正确的?(B)A、程序员必须创立一个线程来释放内存B、内存回收程序负责释放无用内存C、内存回收程序允许程序员
9、直接释放内存D、内存回收程序可以在指定的时间释放内存对象24. 假设需要定义一个类域或类方法,应使用哪种修饰符(C)A、staticB、packageCprivateD、public25. 有以下方法的定义,请选择该方法的返回类型(DReturnTypemethod(bytex,doubley)return(short)xy*2;)A、byteB、shortC、intD、double1. 有以下程序片段,以下哪个选项不能插入到行1。(D)publicclasslnteresting/dosth)A、importjava.awt.*;B、packagemypackage;C、classOther
10、ClassD、publicclassMyClass2. 以下哪项是接口的正确定义(D)A、 interfaceBvoidprint();B、 abstractinterfaceBvoidprint();C、abstractinterfaceBextendsA1,A2A1、A2为己定义的接口abstractvoidprint();D、interfaceBvoidprint();)3. 下面哪个函数是PUbiiCVoidaMethod().的重载函数(D)A、voidaMethod().B、publicintaMethod().CpublicvoidaMethod().DpublicintaMet
11、hod(intm).4. A派生出子类B,B派生出子类C,并且在JaVa源代码中有如下声明:1. Aa=newA();2. Aal=newB();3. Aa2=newC();问以下哪个说法是正确的(D)A、只有第1行能通过编译B、第1、2行能通过编译,但第3行编译出错Cs第1、2、3行能通过编译,但第2、3行运行时出错D、第1行、第2行和第3行的声明都是正确的5.假设A类有如下定义,设a是A类的一个实例,以下语句调用哪个是错误的(C)classAiti;staticStrings;voidmethodl()staticvoidmethod2()A、System.out.println(a.i)
12、;Ba.methodl();C、A.methodl();DA.method2()6.有如下代码段:D2) if(unsafe()dosomething.3) elseif(safe()dotheother.4)其中,方法UnSafe()将抛出IOEXCePtiOn,请问可将以下哪项填入第1行(D)A、 publicIOExceptionmethodName()B、 publicvoidmethodName()C、publicvoidmethodName()throwIOExceptionDpublicvoidmethodName()throwsIOException7. JaVa的字符类型采用
13、的是UniCode编码方案,每个UniCC)de码占用(C)个比特位。A、8B、16Cx32D、648. 以下关于继承的表达正确的选项是(AA、在JaVa中类只允许单一继承B、在JaVa中一个类只能实现一个接口C、在JaVa中一个类不能同时继承一个类和实现一个接口D、在JaVa中接口只允许单一继承9. 给出下面代码,关于该程序以下哪个说法是正确的(C)publicclassPersonstaticintarr=newint5;publicstaticvoidmain(Stringa)System.out.println(arr0);)A、编译时将产生错误B、编译时正确,运行时将产生错误C、输出
14、零D、输出空10. 在使用interface声明一个接口时,只可以使用(D)修饰符修饰该接口。A、privateB、protectedC、privateprotectedD、public11. 编译并运行以下程序,以下描述哪个选项是正确的(D)1. classA2. protectedbooleanequals()3. returnsuper.equals();)4. )A、编译通过运行无异常B、编译通过但运行时出错C、行2出错,不能成功编译D、不能成功编译,行3出错12. 有语句StringS=helloworld;,以下操作哪个是不合法的(B)A、inti=s.length();B、s=3
15、;C、Stringts=s.trim();D、Stringt=s+/z;13. 以下关于JaVa语言的特点,描述错误的选项是(C)A.Java是跨平台的编程语言B.Java支持分布式计算C.JaVa是面向过程的编程语言D.Java支持多线程14. 下述概念中不属于面向对象方法的是(DA.对象、消息B.继承、多态C.类、封装D.过程调用15. 构造化程序设计所规定的三种基本控制构造是(C)A.输入、处理、输出B.树形、网形、环形C.顺序、选择、循环D.主程序、子程序、函数16. 以下关于构造方法的表达中,错误的选项是(C)A. Java语言规定构造方法名与类名必须一样B. Java语言规定构造方
16、法没有返回值,但不用Void声明C. Java语言规定构造方法不可以重载D. Java语言规定构造方法只能通过new自动调用17. 以下哪个类的声明是正确的(D)A.abstractfinalclassHlB.abstractprivatemove()C.protectedprivatenumber;D.publicabstractclassCar18. 关于被私有访问控制符PriVate修饰的成员变量,以下说法正确的选项是(C)A.可以被三种类所引用:该类自身、与它在同一个包中的其他类、在其他包中的该类的子类B.可以被两种类访问和引用:该类本身、该类的所有子类C.只能被该类自身所访问和修改D
17、.只能被同一个包中的类访问19. 以下关于for循环和WhiIe循环的说法中哪个是正确的(B)A. WhiIe循环能实现的操作,for循环也都能实现B. While循环判断条件一般是程序结果,for循环判断条件一般是非程序结果C.两种循环任何时候都可替换D.两种循环构造中都必须有循环体,循环体不能为空20. 阅读以下代码:importjava.io.*;importjava.util.*;publicclassfoopublicstaticvoidmain(Stringargs)Strings;System.out.println(s=+s);)输出结果应该是:(C)A.代码得到编译,并输出“
18、s=B.代码得到编译,并输出rts=nulC.由于StringS没有初始化,代码不能编译通过D.代码得到编译,但捕获到NullPointException异常21. 编译运行以下程序后,关于输出结果的说明正确的选项是(C)publicclassConditionalpublicstaticvoidmain(Stringargs)intx=4;System.out.println(zzvalueis”+(x4)?99.9:9);)A.输出结果为:valueis99.9B.输出结果为:valueis9C.输出结果为:value is 9.0D.编译错误22. 执行完以下代码intUx=newint
19、10:后,以下哪项说明是正确的(A)A.x9为0B.x9未定义C.x10为0D.X为空23. 关于以下程序段,正确的说法是(C)1. StringSl=a+b;2. Strings2=newString(si);3. if(sl=s2)4. System.out.println(=issucceeded,);5. if(sl.equals(s2)6. System.out.println(rt.equals()issucceeded7);A.行4与行6都将执行B.行4执行,行6不执行C.行6执行,行4不执行C.行4、行6都不执行24. 以下程序的运行结果是:(C)publicclasslncr
20、ementpublicstaticvoidmain(Stringargs)intc;c=2;System.out.println(c);System.out.println(c+);System.out.println(c);)A.222B.233C.223D.34425. 以下哪一个关键字用于实现接口来定义类(B)A、extendsB、implementsC、abstractD、interface1. 假设a的值为3时,以下程序段被执行后,c的值是多少(C)if(a0)if(a3)c=2;elsec=3;elsec=4;Ax1B、2C、3D、42. 下面哪一个操作符的优先级最高(D)A、&B
21、、IlC、!D、()3.以下方法头中哪一个不与其他方法形成重载(OVeHoad)关系?(D)A、voidmmm()B、voidmmm(inti)C、voidmmm(Strings)D、intmm()4. 编译JaVa程序的命令是:(B)A、appletviewerB、javacC、javaDxjavadoc5. 编译Java源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为(B)。A、.byteB、.classC、.htmlD、.exe6. 执行语句inti=l,j=+i;后i与j的值分别为(DA、1与1B、2与1C、1与2D、2与27. main方法是Java应用程序执行的入口点,关
22、于main方法的方法头以下哪项是合法的(B)A、publicstaticvoidmain()Bxpublicstaticvoidmain(Stringargs)Cpublicstaticintmain(Stringarg)D、publicvoidmain(Stringarg)8. 以下哪个选项不是JaVa语言的特点(D)A、面向对象B、高安全性C、平台无关D、面向过程9. 以下哪个是合法的JaVa标识符(B)A、Tree&GlassesB、FirstJavaAppIetC、*theLastOneD、273.510. 下面的选项中,哪一项不属于“汽车类”的行为(DA、启动B、刹车C、减速D、速度
23、11. 下面哪一个循环会导致死循环(C)A、for(intk=0;k0;k-)Cfor(intk=0;k0;k+)12. 有如下程序段:inta=b=5;StringSl=祝你今天考出好成绩!Strings2=si;那么表达式a=b与s2=si的结果分别是:(A)。A、truetrueB、falsetrueC、true与falseD、false与false13. 在JaVa中用什么关键字修饰的方法可以直接通过类名来调用(A)A、staticB、finalC、privateD、void14. 假设在某一个类定义中定义有如下的方法:abstractvoidperformDial();该方法属于(C
24、)。A、接口方法B、最终方法C、抽象方法D、空方法15. 有如下程序段:inttotal=0;for(inti=0;iIntegerD、Number18. SyStem.out.println(”5”+2);的输出结果应该是1AA、52B、7C、2D、519. 为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB)oB. public void method()D. abstract void method()作为前缀就可以调用它,该方法头的形式为(AA.staticvoidmethod()C.finalvoidmethod()20. 下面声明数组的写法错误(DJ0A
25、inta;B:inta;Cint3a;D;int3a;21. 设X为float型变量,y为double型变量,a为int型变量,b为long型变量,C为Char型变量,那么表达式x+y*ax+by+c的值为(C)类型。B longD charAintCdouble22. 欲构造AITayLiSt类的一个实例,此类继承了LiSt接口,以下哪个方法是正确的(B)AnArrayListmyList=newObject();B、ListmyList=newArrayList();C、ArrayListmyList=newList();DxListmyList=newList();23. 指出正确的表达
26、式(C)A、byte=128;B、Boolean=null;C、longI=OxfffL;D、double=0.9239d;24. 指出以下程序运行的结果(B)publicclassExampleStringstr=newString(good);charch=,a7b,c);publicstaticvoidmain(Stringargs)Exampleex=newExample();ex.change(ex.str,ex.ch);System.out.print(ex.str+and);Sytem.out.print(ex.ch);publicvoidchange(Stringstcharc
27、h)str=testok;ch0=g;)A、 goodandabcB、 goodandgbcC、 testokandabcD、 testokandgbc25. 运行以下程序,会产生什么结果(D)publicclassXextendsThreadimplementsRunnablepublicvoidrun()System.out.println(thisisrun();publicstaticvoidmain(Stringargs)Threadt=newThread(newX();t.start();)A、第一行会产生编译错误B、第六行会产生编译错误C、第六行会产生运行错误D、程序会运行和启动
28、1. 要从文件节Ldat”中读出第10个字节到变量c中,以下哪个方法适合?(D)A、 FiIeInputStreamin=newFilelnputStream(,file.dat);in.skip(9);intc=in.read();B、 FiIeInputStreamin=newFilelnputStream(,file.dat);in.skip(10);intc=in.read();CFiIeInputStreamin=newFilelnputStream(file.dat);intc=in.read();D、RandomAccessFiIein=newRandomAccessFile(,
29、file.dat);in.skip(9);intc=in.readByte();2. JaVa编程所必须的默认引用包为(B)A. java.sys包B. java.Iang包C. java.util包D.以上都不是3. 下面语句在编译时不会出现警告或错误的选项是(C)A.floatf=3.14;B.charc=wc;C. Booleanb=null;D. inti=10.0;4. 下面不是合法标识符的是(A)A. 2ofUSB. giveMesC. WhataQuizD.$d2000_5. 下面哪一个是合法的数组声明和构造语句(C)A. intages=100;B. intages=newin
30、t100;C. intages=newint100;D. int()ages=newint(100);6. 下面说法不正确的选项是(C)A.一个子类的对象可以接收父类对象能接收的消息;B.当子类对象和父类对象能接收同样的消息时,它们针对消息产生的行为可能不同;C.父类比它的子类的方法更多;D.子类在构造函数中可以使用SUPer()来调用父类的构造函数;7. 给出下面代码段,哪行将引起一个编译时错误(D)1) publicclassTest2) intn=0;3) intm=0;4) publicTestfinta)m=a;5) publicstaticvoidmain(Stringarg)6)
31、 Testtl,t2;7) intj,k;8) j=3;k=5;9) tl=newTest();10) t2=newTest(k);11) 12)A.行1B.行4C.行6D.行98. 下面程序中类CIassDemo中定义了一个静态变量sum,分析程序段的输出结果。(C)classCIassDemopublicstaticintsum=l;publicClassDemo()sum=sum+5;)publicclassClassDemoTestpublicstaticvoidmain(Stringargs)CIassDemodemol=newClassDemo();CIassDemodemo2=n
32、ewClassDemo();System.out.println(demol.sum);)A.0B.6C.11D.29. 下面这些类型的应用,那个不使用JaVa语言来编写(A)A)JavaScriptB)AppletC)ServletD)JavaSwing10. 声明成员变量时,如果不使用任何访问控制符(PUblic,protected,private),那么以下哪种类型的类不能对该成员进展直接访问(D)A)同一类B)同一包中的子类C)同一包中的非子类D)不同包中的子类11. 以下哪种异常是检查型异常,需要在编写程序时声明(C)A)NullPointerExceptionB)ClassCast
33、ExceptionC)FileNotFoundExceptionD)IndexoutofBoundsException12. 下面哪个流类属于面向字符的输入流(D)A)BufferedWriterB)FiIeInputStreamC)ObjectInputStreamD)InputStreamReader13. 下面关于数组声明和初始化的语句那个有语法错误(C)A) intal=3A5;B) Stringa2=stringl,stringl,stringl,;C) Stringa3=newString(3);D) inta4=newint33;14. 下面哪一行代码正确的声明了一个类方法(静态
34、方法)(D)A) publicintmethod(inti)B) protectedmethod(inti)C) publicstaticmethod(Strings)D) protectedstaticvoidmethod(lntegeri)15. 下面的方法,当输入为2的时候返回值是多少?(D)publicintgetValue(inti)intresult=0;switch(i)case1:result=result+i;case 2:result=result+i*2;case 3:result=result+i*3;)returnresult;)A)0B)2C)4D)1016. ge
35、tCustomerlnfo()方法如下,try中可以捕获三种类型的异常,如果在该方法运行中产生了一个IOEXCePtiorb将会输出什么结果(A)publicvoidgetCustomerlnfo()try/dosomethingthatmaycauseanExceptioncatch(java.io.FileNotFoundExceptionex)System.out.print(FileNotFoundException);catch(java.io.IOExceptionex)System.out.print(IOException!);catch(JavaJang.Exceptione
36、x)System.out.print(Exception!);A) IOException!B) IoExceptionIException!C) FileNotFoundExceptionlIOException!D) FileNotFoundException!IOException!Exception!17. 新建一个流对象,下面哪个选项的代码是错误的(B)A) newBufferedWriter(newFileWriter(,a.txt);B) newBufferedReader(newFilelnputStream(a.dat);C) newGZIPOutputStream(newF
37、ileOutputStream(a.zip);D) newObjectlnputStream(newFilelnputStream(,a.dat);18. Java的集合框架中重要的接口java.UtiLCoIIection定义了许多方法。选项中哪个方法不是ColIeCtion接口所定义的(C)A)intsize()B) booleancontainsAII(Collectionc)C) compareT(Objectobj)D) booleanremove(Objectobj)19. 一个线程在任何时刻都处于某种线程状态(threadstate),例如运行状态、阻塞状态、就绪状态等。一个线程
38、可以由选项中的哪种线程状态直接到达运行状态(D)A)死亡状态B)阻塞状态(对象IOCk池内)C)阻塞状态对象Wait池内)D)就绪状态20. 选项中哪一行代码可以替换题目中addcodehere而不产生编译错误(A)publicabstractclassMyCIasspublicintconstlnt=5;/addcodeherepublicvoidmethod()A) publicabstractvoidmethod(inta);B) value=value+5;C) publicintmethod();D) publicabstractvoidanotherMethod()21. File
39、类是IO包中唯一表示磁盘文件信息的对象,它定义了一些与平台无关的方法来操纵文件。通过调用FiIe类提供的各种方法,我们能够创立、删除文件、重命名文件、判断文件的读写权限及是否存在,设置和查询文件的最近修改时间等。下面的代码片段实现的是什么功能(B)Filefile=newFile(C:test.dat);if(file.exists()file.delete();A)创立C:test.datoB) 删除C:test.datoC) 翻开C:test.dat文件输出流。D)移动C:test.dat22. 阅读Shape和Circle两个类的定义。在序列化一个Circle的对象circle到文件时,
40、下面哪个字段会被保存到文件中(B)classShapepublicStringname;)classCircleextendsShapeimplementsSerializableprivatefloatradius;transientintcolor;publicstaticStringtype=Circle;)A)nameB)radiusC) colorD) type23. 下面是People和Child类的定义和构造方法,每个构造方法都输出编号。在执行newChild(“mike”)的时候都有哪些构造方法被顺序调用请选择输出结果(D)classPeopleStringname;publi
41、cPeopledSystem.out.print(l);publicPeople(Stringname)System.out.print(2);this.name=name;)classChildextendsPeoplePeoplefather;publicChild(Stringname)System.out.print(3);this.name=name;father=newPeople(name+:F);)publicChild()System.out.print(4);)A)312B)32C)432D)13224. 下面哪个选项中的代码没有定义内部类,或者错误的定义了内部类(C)A) publicClassLineintlength;ClassPOint内部类代码)B) publicClassLinepublicPointgetPoint()returnnewPOint()内部类代码;)C) publicClassLine外部类代码)ClassPoint内部类代码D) publicCl