《面向对象程序设计(Java)》考试复习题库(含答案)_第1页
《面向对象程序设计(Java)》考试复习题库(含答案)_第2页
《面向对象程序设计(Java)》考试复习题库(含答案)_第3页
《面向对象程序设计(Java)》考试复习题库(含答案)_第4页
《面向对象程序设计(Java)》考试复习题库(含答案)_第5页
已阅读5页,还剩191页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

PAGEPAGE1《面向对象程序设计(Java)》考试复习题库(含答案)一、单选题1.有如下程序代码,程序输出结果是:()。{Int[]arr1=newint[10];Int[]arr2=newint[arr1.length];System.out.println(Arrays.equals(arr1,arr2));}A、trueB、falseC、0D、1答案:A2.现有如下代码,假设数组已初始化且其长度大于0。该方法旨在返回等于target的数组元素的下标,如果不存在这样的元素,则返回-1。{Privateint[]data;PublicintseqSearchRec(inttarget){ReturnseqSearchRecHelper(target,data.length-1);}PrivateintseqSearchRecHelper(inttarget,intlast){If(data[last]==target)Returnlast;ElseReturnseqSearchRecHelper(target,last-1);}以下哪种测试用例,调用seqSearchRec(5)总是会导致错误?I.data只包含一个元素。II.data不包含值5。III.data包含多个值5。}A、IB、IIC、IIID、IandIIIE、IandII答案:E3.在Java中为类A的一个无参数无返回值的方法method书写方法头,使得使用类名A作为前缀就可以调用它,该方法头的形式应该为?A、staticvoidmethod()B、publicvoidmethod()C、finalvoidmethod()D、abstractvoidmethod()答案:A4.关于循环语句,下列说法正确的是()。A、while循环和do…while循环除了格式不同外,功能完全相同B、for循环语句多用于处理确定次数的循环C、do…while语句首先计算循环条件,当条件满足时,才去执行循环体中的语句D、while语句中的循环体至少执行一次答案:B5.数组的定义为:int[]arr=newint[10];如何获得数组的长度?A、rr.length()B、arr.size()C、arr.lengthD、arr.size答案:C6.阅读下面的程序段,以下表达式的值为true的是哪个?()Stringstr1=newString("java");Stringstr2=newString("java");StringBufferstr3=newStringBuffer("java");StringBufferstr4=newStringBuffer("java");A、str1==str2B、str1.equals(str2)C、str3==str4D、str3.equals(str4)E、str1==str3F、str1.equals(str4)答案:B7.读取一个可正常编译、包含中文注释的HelloWord.java文件的内容并输出到控制台,可以使用以下哪个类来读取?A、FileInputStreamB、FileReaderC、DataInputStreamD、FileStream答案:B8.Java中,那个方法是StringBuffer类和String类共有的。A、ppend()B、reverse()C、replace()D、insert()答案:C9.下列语句会造成数组newint[10]越界是()。A、[0]+=9;B、a[9]=10;C、a[9]D、for(inti=0;i<=10;i++)a[i]++;答案:D10.已知方法test()定义如下,在方法unsafe()运行正常的情况,下哪条语句将肯定不会被输出?{Publicvoidtest(){Try{Unsafe();System.out.println("Test4");}catch(SafeExceptione){System.out.println("Test3");}finally{System.out.println("Test2");}System.out.println("Test1");}}A、Test4B、Test3C、Test2D、Test1答案:B11.Test.java程序代码如下:{PublicclassTest{Publicstaticvoidmain(String[]args){System.out.println(args[1]);}}以上程序编译后,用命令:javaTest2345运行的输出结果是什么?()}A、1B、2C、3D、4答案:C12.现有如下方法:/∗∗Precondition:dataissortedinincreasingorder.∗/PublicstaticintbinarySearch(int[]data,inttarget){Intstart=0;Intend=data.length-1;While(start<=end){Intmid=(start+end)/2;/∗Calculatemidpoint∗/If(target<data[mid]){End=mid-1;}Elseif(target>data[mid]){Start=mid+1;}Else{Returnmid;}}Return-1;}假设调用binarySearch方法的数组包含2000个按递增顺序排序的元素。请问/∗CalculateMiddpoint∗/所在的语句(第8行)可以执行的最大次数是多少?A、2000B、1000C、20D、11E、1答案:D13.有如下代码,程序执行的结果是()。Stringstr1="";String[]strings=str1.split("u");System.out.println(Arrays.toString(strings));A、sd,tsd,t.ed,.cnB、[sd,tsd,t.ed,.cn]C、[sdu,tsdu,,.cn]D、sdu,tsdu,,.cn答案:B14.如下循环结束后i的值是()Inty=0;For(inti=0;i<10;++i){Y+=i;}A、9B、10C、不确定D、11答案:B15.下面不属于Java语言特点的是:()。A、平台无关B、面向对象C、支持指针类型D、垃圾回收机制答案:C16.如下代码运行后,list2的输出是(){ClassTest{Publicstaticvoidmain(String[]args){Int[]list1={1,2,3};Int[]list2={1,2,3};List2=list1;List1[0]=0;list1[1]=1;list2[2]=2;For(inti=0;i<list2.length;i++)System.out.print(list2[i]+"");}}}A、123B、111C、012D、013答案:C17.Java的集合框架中重要的接口java.util.Collection定义了许多方法。选项中哪个方法不是Collection接口所定义的?()A、intsize()B、ooleancontainsAll(Collectionc)C、ompareTo(Objectobj)D、booleanremove(Objectobj)答案:C18.在Java中,所有的异常类皆继承哪一个类?A、java.io.ExceptionB、java.lang.ThrowableC、java.lang.ExceptionD、java.lang.Error答案:B19.Java中,有以下代码,划线部分可替换为下列调用语句选项,哪一个调用语句是错误的?ClassA{Inti;StaticStrings;Voidmethod1(){}Staticvoidmethod2(){}Publicstaticvoidmain(String[]args){A、=newA();________________//替换为某选项语句}}A、System.out.println(a.i);B、a.method1();C、A.method1();D、A.method2()答案:C解析:这道题考察的是Java中对象实例和类静态成员的访问方式。在Java中,实例变量(如`i`)和实例方法(如`method1()`)需要通过对象实例来访问,而静态变量(如`s`)和静态方法(如`method2()`)则可以直接通过类名来访问。-A选项`System.out.println(a.i);`是正确的,因为它通过对象实例`a`来访问实例变量`i`。-B选项`a.method1();`也是正确的,因为它通过对象实例`a`来调用实例方法`method1()`。-C选项`A.method1();`是错误的,因为`method1()`是一个实例方法,不能通过类名`A`直接调用,必须通过对象实例来调用。-D选项`A.method2();`是正确的,因为它通过类名`A`来调用静态方法`method2()`。因此,C选项是错误的调用语句。20.以下那些集合可以保存具有映射关系的数据()A、rrayListB、LinkedListC、TreeMapD、TreeSet答案:C21.关于垃圾收集的哪些叙述是对的。A、垃圾收集能够在期望的时间释放被java对象使用的内存。B、垃圾收集将检查并释放不再使用的内存。C、垃圾收集允许程序开发者明确指定并立即释放该内存。D、程序开发者必须自己创建一个线程进行内存释放的工作。答案:B22.Java中,不是Set接口子类或子接口的是。A、HashSetB、LinkedHashSetC、QueueD、TreeSetE、SortedSet答案:C23.在Java类的定义中,程序执行入口声明如下,哪一个是错误的程序代码?A、publicstaticvoidmain(Stringargs){}B、publicstaticvoidmain(String[]args){}C、publicstaticvoidmain(Stringargs[]){}D、publicstaticvoidmain(Stringmessage[]){}答案:A24.要从“file.dat”文件中读出第10个字节到变量c中,下列哪个方法适合?()A、FileInputStreamin=newFileInputStream("file.dat");intc=in.read();B、RandomAccessFilein=newRandomAccessFile("file.dat");in.skip(9);intc=in.ReadByte();C、FileInputStreamin=newFileInputStream("file.dat");in.skip(9);intc=in.read();D、FileInputStreamin=newFileInputStream("file.dat");in.skip(10);intc=in.read();答案:C解析:这道题考查对文件读取操作的理解。在Java中,要读取特定位置的字节,需先定位。选项A直接读取,无法定位到第10个字节。选项B用`RandomAccessFile`的`skip`方法,跳过9个字节再读,符合要求,但通常`FileInputStream`更常用。选项D跳过10个字节,位置错误。选项C先跳过9个字节再读取,能准确获取第10个字节。所以答案选C。25.在Java中,下面的程序段创建了BufferedReader类的对象in,以便读取本机c盘my文件夹下的文件1.txt。以下File类构造函数中使用正确的路径和文件名的是?Filef=newFile(填代码处);File=newFileReader(f);in=newBufferedReader(file);}A、"./1.txt"B、"./my/1.txt"C、"c:\\my\\1.txt"D、"c:\my\1.txt"答案:C26.Java中,Collection中保留两个集合中交集元素的方法是A、ddAll()B、removeAll()C、retainAll()D、containsAll()答案:C27.关于字符串的方法,如下代码执行结果是()。Stringstr="中国GOOD";System.out.println(str.getBytes().length);A、6B、7C、9D、10答案:D28.以下选项中没有语法错误的是()。A、while(inti<7){I++;System.out.println(“iis“+i);}B、intj=3;while(j){System.out.println(“jis“+j);}C、intj=0;For(intk=0;j+k!=10;j++,k++){System.out.println(“jis“+j+“kis”+k);}D、intj=0;Do{System.out.println(“jis“+j++);If(j==3){Continueloop;}}while(j<10);答案:C29.在控制台显示消息的语句正确的是()A、System.out.println(我是一个Java程序员了!);B、System.Out.println("我是一个Java程序员了!");C、System.out.println("我是一个Java程序员了!");D、System.Out.Println("我是一个Java程序员了!")答案:C30.在编写异常处理的Java程序中,catch语句块应该与()语句块对应,使得用该语句块来启动Java的异常处理机制。A、tryB、switchC、breakD、efault答案:A31.下面那些语句会发生编译错误?A、int[]a;B、intd[]=null;C、int[]b=newint[5];D、intc[]=newint[];答案:D32.以下有关构造方法的说法,正确的是:____。A、一个类的构造方法可以有多个B、构造方法在类定义时被调用C、构造方法只能由对象的其它方法调用D、构造方法可以和类同名,也可以和类名不同答案:A33.在Java中,关于volatile关键字,以下哪些说法是正确的?A、volatile可以保证对基本数据类型的原子性操作B、volatile可以确保多个线程看到某个变量的最新值C、volatile能够禁止指令重排序D、volatile修饰的变量在多线程环境下总是线程安全的答案:B解析:B解释:A项错误,volatile不能保证原子性;C项不完全正确,volatile可以禁止某些类型的指令重排序;D项错误,volatile并不保证线程安全。)34.利用java.util.Date类创建对象,欲得到系统当前时间的语句为:()。A、newDate();B、newDate(0);C、newDate(NOW);D、newDate(-1);答案:A35.以下标识符中哪项是不合法的()A、BigMeaninglessNameB、$intC、2stD、$1答案:C36.关于异常,下列说法正确的是()。A、程序运行过程中,若产生异常,它是某种异常类型的对象B、一旦程序运行,异常对象将被创建C、为了保证程序运行速度,要尽量避免异常控制D、以上说法都不对答案:A37.关于字符串的方法,如下代码执行结果是()。Stringstr="中国GOOD";System.out.println(str.toCharArray().length);A、6B、7C、8D、9答案:A38.对字符串"石家庄-武汉-哈尔滨"进行str.substring(4,6)操作,截取出来的结果是()A、武汉B、武汉-哈尔滨C、-武汉-D、-武汉-哈尔答案:A39.进行UDP通信时,在接收端若要获得发送端的IP地址,可以使用Datagracket的()方法。A、getAddress()B、getPort()C、getName()D、getData()答案:A40.对于构造方法,下列叙述不正确的是()。A、构造方法的方法名必须与类名相同B、构造方法的返回类型只能是void型C、构造方法可以对该类对象的实例变量进行初始化工作D、一般在创建新对象时,系统会自动调用构造方法答案:B41.有整型数组:int[]x={12,35,8,7,2},则调用方法Arrays.sort(x)后,数组x中的元素值依次是()。A、2781235B、1235872C、3512872D、8712352答案:A42.使用Iterator时,判断是否存在下一个元素可以使用以下哪个方法?()A、next()B、hash()C、hasPrevious()D、hasNext()答案:D43.如果一个方法会产生必检异常,下列说法正确的是?A、可以不做任何处理。B、必须在方法内部用try-catch语句捕获并处理。C、必须在方法内部用try-catch语句捕获并处理,或者用throws语句声明异常。D、必须用throws语句声明异常。答案:D44.以下程序段输出结果的是()。PublicclassTest{Publicstaticvoidmain(Stringargs[]){Stringstr="world";Str=str.substring(3);Str.concat("mn");System.out.print(str);}}A、ldB、ldmnC、worldD、rldmn答案:D45.在Java中,下列哪一个import命令可以使我们在程序中使用输入/输出流类?A、importjava.sql.∗;B、importjava.util.∗;C、importjava.io.∗;D、.∗;答案:C46.下面程序段的输出结果是()。Publicstaticvoidmain(String[]args){Intx=1,a=0,b=0;Switch(x){Case0:b++;Case1:a++;Case2:a++;b++;}System.out.println("a="+a+",b="+b);}A、=2,b=1B、a=1,b=1C、a=1,b=0D、a=2,b=2答案:A47.下列说法中,不正确的是()。A、一个java源程序经过编译后,得到的文件的扩展名一定是.class。B、一个java源程序编译通过后,得到的结果文件数也只有一个。C、一个java源程序只能有一个publicclass类定义,且源文件的名字与publicclass的类名相同,扩展名必须是.java。D、一个java源程序可以编译成多个class文件。答案:B48.Java中,Collection中删除两个集合中交集元素的方法是A、ddAll()B、containsAll()C、removeAll()D、retainAll()答案:C49.Java中下面哪一个不是创建二维数组的正确语句?A、floatf[][]=newfloat[6][6];B、float[]f[]=newfloat[6][6];C、floatf[][]=newfloat[][6];D、float[][]f=newfloat[6][];答案:C50.FileOutputStream类的父类是()。A、FileB、FileOutputC、OutputStreamD、InputStream答案:C51.声明一个类是需要()关键字。A、publicB、privateC、lassD、以上都是答案:C52.循环执行后,count的值是()Intcount=0;Do{System.out.println("WelcometoJava");}while(count++<9);System.out.println(count);A、11B、10C、9D、8答案:B53.对JDK描述错误的是()。A、运行Java程序只要有JRE环境就可以,不一定需要全部JDK的功能B、JDK中包括JVM、核心类库、Java开发工具(java,javac)等C、JDK本身也是平台无关的,不同的操作系统安装的JDK是一样的D、JDK的全称是JavaDevelopmentKit答案:C54.Java的Set集合中,对象存取顺序一致的类是。A、HashSetB、TreeSetC、LinkedHashSetD、AbstractSet答案:C55.下列代码的执行结果是()。{PublicclassMain{Publicstaticvoidmain(String[]args){Ints=0;IntmyArray[]={10,20,30,40,50,60,70,80,90,100};For(inti=0;i<myArray.length;i++)If(i%2==1){S+=myArray[i];}System.out.println(s);}}}A、200B、250C、300D、350答案:C56.已知x是一个int类型变量,以下可以作为while循环的循环条件的表达式是()?A、x<=10B、!xC、x++D、x=10答案:A57.字节码文件经过Java编译器翻译成一种特殊的二进制文件,由JVM负责解释执行。该二进制文件扩展名为()A、javaB、classC、objD、bin答案:B58.分析以下程序:{PublicclassTest{Publicstaticvoidmain(String[]args){Try{Strings="5.6";Integer.parseInt(s);Inti=0;Inty=2/i;System.out.println("WelcometoJava");}Catch(Exceptionex){System.out.println(ex);}}}该程序会出现()}A、由于Integer.parseInt(s)出现一个异常。B、由于2/i出现一个异常。C、程序有编译错误。D、程序编译和运行都没有异常。答案:A59.ByteArrayOutputStream将()作为输出流。A、字符B、字节C、字节数组D、对象答案:C60.下面哪种类型的文件可以在Java虚拟机中运行?A、javaB、jreC、exeD、class答案:D61.下面程序的运行结果是(){Main(){Intx=30;Int[]numbers=newint[x];X=60;System.out.println(numbers.length);}}A、60B、20C、30D、50答案:C62.如果要使条件method(-4.4)==-4成立,则用到java.lang.Math类中哪个方法?A、round()B、min()C、trunc()D、abs()E、floor()F、ceil()答案:A63.在Java中,设m、n、h为类Test中定义的int型变量名,下列类Test的构造方法中不正确的是?A、Test(intm){..}B、voidTest(intm){..}C、Test(intm,intn){..}D、Test(intm,intn,inth){..}答案:B解析:中64.在Java中,要从文件"file.dat"文件中读出第10个字节到变量C中,以下适合的方法是?A、FileInputStreamin=newFileInputStream("file.dat");in.skip(9);intc=in.read();B、FileInputStreamin=newFileInputStream("file.dat");in.skip(10);intc=in.read();C、FileInputStreamin=newFileInputStream("file.dat");intc=in.read();D、RandomAccessFilein=newRandomAccessFile("file.dat");in.skip(9);intc=in.ReadByte();答案:A解析:这道题考察的是Java中文件读取的知识。在Java中,`FileInputStream`类用于从文件读取数据,`skip(longn)`方法用于跳过和丢弃输入流中的数据的n个字节。要从文件中读取第10个字节,我们需要先跳过前9个字节,然后读取第10个字节。选项A中,`in.skip(9);`正确地跳过了前9个字节,然后`intc=in.read();`读取了第10个字节,符合题目要求。选项B跳过了10个字节,不符合题意。选项C没有跳过任何字节,直接读取了第一个字节。选项D使用了`RandomAccessFile`类,虽然也可以实现跳过字节的功能,但`ReadByte()`方法不是Java标准API中的方法,因此选项D是错误的。所以,正确答案是A。65.为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为()。A、staticvoidmethod()B、publicvoidmethod()C、finalvoidmethod()D、abstractvoidmethod()答案:A66.下面哪个选项是正确的main方法说明?A、publicmain(String[]args)B、publicstaticvoidmain(String[]args)C、privatestaticvoidmain(String[]args)D、voidmain()答案:B67.请选择下面程序正确的输出结果()PublicclassMain{Publicstaticvoidmain(Stringargs[]){Stringa=newString("A");Stringb=newString("B");Mb_operate(a,b);System.out.println(a+"."+b);}Staticvoidmb_operate(Stringx,Stringy){X.concat(y);Y=x;}}A、BB、A.AC、AB.ABD、AB.B答案:A68.有如下程序代码,执行结果是:()。Intscore=100;Intgrade=score/10;Switch(grade){Case10:Case9:System.out.println("优秀");Case8:System.out.println("良好");Case7:System.out.println("中等");Case6:System.out.println("及格");Case4:Case3:Case2:Case1:Case0:System.out.println("不及格");Default:System.out.println("error!");}A、优秀B、优秀良好中等及格不及格Error!C、error!D、编译错误答案:B69.关于字符串对象的比较,==用于比较字符串对象的()是否相同;equals()方法用于比较字符串对象的()是否相同。A、存储地址字符序列B、存储地址存储地址C、字符序列存储地址D、字符序列字符序列答案:A70.下面的描述中,哪一种是Java的垃圾自动回收机制所回收的对象()?A、未被任何变量指向的对象B、局部变量C、基本类型的变量D、引用类型的变量答案:A71.下面程序在fun()方法当出现数组下标超过界限的情况下,被ArrayIndexOutOfBoundsException类型的异常对象e所捕获。程序输出结果是:()。{Publicvoidtest(){Try{Fun();System.out.print("情况1");}catch(ArrayIndexOutOfBoundsExceptione){System.out.print("情况2");}catch(Exceptione){System.out.print("情况3");}finally{System.out.print("finally");}}}A、情况1B、情况2C、情况2finallyD、情况3finally答案:C72.在Java中,不是集合List接口子类或子接口的是A、rrayListB、LinkedListC、SetD、StackE、Vector答案:C73.下列选项中,()发生时将调用类的构造方法。A、调用对象方法B、创建对象C、使用对象变量D、类定义答案:B74.在Java中,下列常见的系统给出异常中,哪一个是数组越界异常?A、rrayIndexOutOfBoundsExceptionB、IOExceptionC、NullPointerExceptionD、ArithmeticException答案:A75.关于字符串的方法,如下代码执行结果是____。StringfileName="";System.out.println(fileName.substring(1,4));A、dutB、sdutC、sduD、ut答案:A76.关于字符串的相关使用,如下代码执行结果是()。Stringstr1="110";Inti=Integer.parseInt(str1,2);Inti1=i+2;System.out.println(i1);A、112B、8C、110D、10答案:B77.下面代码运行结果显示()。Doubletemperature=50;If(temperature>=100)System.out.println("toohot");Elseif(temperature<=40)System.out.println("toocold");ElseSystem.out.println("justright");A、toohotB、toocoldC、justrightD、toohottoocoldjustright答案:C78.有一个类A,以下为其构造方法的声明,其中正确的是()。A、voidA(intx){..}B、A(intx){..}C、a(intx){..}D、voida(intx){..}答案:B79.已知方法test()定义如下,在方法unsafe()运行正常的情况下哪条语句将肯定不会被输出?{Publicvoidtest(){Try{Unsafe();System.out.println("Test4");}catch(SafeExceptione){System.out.println("Test3");}finally{System.out.println("Test2");}System.out.println("Test1");}}A、Test4B、Test3C、Test2D、Test1答案:B80.用关键字private修饰的成员变量,下列说法正确的是()A、只能被该类自身所访问或修改B、只能被同一包中的其它类访问C、可以被其它包中的类访问D、可以被其它包中该类的子类所访问答案:A81.关于字符串的构造方法,下面代码执行结果是()。Stringstr="中国123";Byte[]bytes=str.getBytes();System.out.println(newString(bytes,3,3));A、123B、国C、国12D、国1答案:B82.假设有如下程序:PublicclassDemo{Publicstaticvoidmain(Stringargs[]){Stringstr="";For(intx=0;x<5;x++){Str+=x;}System.out.println(str);}}最终的执行结果是什么?A、01234B、10.0C、14.0D、25.0答案:A83.在Java中,为了定义3个整型数组a1,a2,a3,下面声明正确的语句是?A、intArray[]a1,a2;inta3[]={1,2,3,4,5};B、int[]a1,a2;inta3[]={1,2,3,4,5};C、inta1,a2[];inta3={1,2,3,4,5};D、int[]a1,a2;inta3=(1,2,3,4,5);答案:B84.如下程序会抛出()类型的异常?{PublicclassTest{Publicstaticvoidmain(String[]args){Strings="abc";System.out.println(s.charAt(3));}}}A、rithmeticExceptionB、ArrayIndexOutOfBoundsExceptionC、StringIndexOutOfBoundsExceptionD、ClassCastException答案:C85.下列哪个选项可以计算出角度为42度的余弦值?A、doubled=Math.cos(42);B、doubled=Math.conine(42);C、doubled=Math.cos(Math.toRadians(42));D、oubled=Math.cos(Math.toDegrees(42));答案:C86.定义了一维int型数组a[10]后,下面错误的引用是()。A、[0]=1B、a[10]=2C、a[0]=5∗2D、a[1]=a[2]∗a[0]答案:B87.在Java集合中,下列遍历方式中,哪一个不可以用来遍历List集合?A、Iterator迭代器B、foreach循环C、get()和size()方法结合D、get()和length()方法结合答案:D88.设有下面Java程序,请阅读程序并完成选择,以下哪个表达式的值为true?PublicclassSle{Longlength;PublicSle(longl){length=l;}Publicstaticvoidmain(Stringarg[]){Sles1,s2,s3;S1=newSle(21L);S2=newSle(21L);S3=s2;Longm=21L;}}A、s1==s2;B、s2==s3;C、m==s1;D、s1.equals(m);答案:B89.有如下程序代码,程序执行的结果是()。Inti=110;Stringstr2=i+2+"lucky";System.out.println(str2);A、1102luckyB、112luckyC、lucky1102D、lucky112答案:B90.下面关于构造方法的调用,正确的是?A、构造方法在类定义的时候被调用B、构造方法在创建对象的时候被调用C、构造方法在类加载的时候被调用D、构造方法在使用对象的变量时被调用答案:B91.下列哪些是重载后的构造函数?PublicclassConstOver{PublicConstOver(intx,inty,intz){}}A、PublicvoidConstOver(bytex,bytey,bytez){}B、ProtectedintConstOver(){}C、PrivateConstOver(intz,inty,bytex){}D、PublicObjectConstOver(intx,inty,intz){}答案:C92.Java中用来抛出异常的关键字是:()。A、tryB、catchC、throw和throwsD、finally答案:C93.在Java中,()类可用于创建链表数据结构的对象A、LinkedListB、ArrayListC、ollectionD、HashMap答案:A94.在一个try-catch-finally结构中,关于finally语句块,以下哪个说法是正确的?A、try语句块中如果没有抛出异常,finally语句块会被执行。B、try语句块中如果抛出异常,并且被某一个catch语句捕捉到,finally语句块会被执行。C、try语句块中如果抛出异常,但没有被任何一个catch语句捕捉到,finally语句块会被执行。D、其他3个选项都对。答案:D95.在Java中,负责对不再使用的对象自动回收的是()A、垃圾回收器B、虚拟机C、编译器D、多线程机制答案:A96.设有数组的定义int[]a=newint[3],则下面对数组元素的引用错误的是()。A、[0]=8;B、a[a.length-1]=90;C、a[3]=9;D、inti=1;a[i]=0;答案:C97.定义一个Java类时,如果前面使用关键字()修饰,它是最终类,该类不可以被继承。A、privateB、finalC、staticD、public答案:B98.有以下Java程序段,请问编译时会产生错误的是哪一行?(根据行号选择)1publicclassTest{2intm,n;3publicTest(){}4publicTest(inta){m=a;}5publicstaticvoidmain(Stringarg[]){6Testt1,t2;7intj,k;8j=0;k=0;9t1=newTest();10t2=newTest(j,k);11}12}A、第3行B、第5行C、第6行D、第10行答案:D99.在java.lang.Integer类中,哪个方法用于获得一个整数的二进制形式的字符串?()A、toString(inti)B、toBinaryString(inti)C、toOctalString(inti)D、toHexString(inti)答案:B100.关于字符串的方法,如下代码执行结果是()。StringfileName="";System.out.println(fileName.lastIndexOf("."));A、9B、10C、13D、12答案:C101.Java中对日期数据按照国家和地区的使用习惯进行格式化字符串及日期格式转换,要使用到Java.text.SimpleDateFormat类。把日期转换成符合格式的字符串,调用()方法;把某格式的字符串转换成日期对象,调用()方法。A、parseformatB、parsedateFormatC、formatparseD、formatparseDate答案:C102.下面程序段的输出结果是()。Publicstaticvoidmain(String[]args){Intx=1,a=0,b=0;Switch(x){Case0:b++;Case1:a++;Case2:a++;b++;}System.out.println("a="+a+",b="+b);}A、=2,b=1B、a=1,b=1C、a=1,b=0D、a=2,b=2答案:A103.类ABC定义如下:1.publicclassABC{2.publicintmax(intA,intb){}3.4.}将以下哪个方法插入行3是不合法的。()A、publicfloatmax(floatA,floatB,floatc){}B、publicintmax(intC,intd){}C、publicfloatmax(floatA,floatb){}D、privateintmax(intA,intB,intc){}答案:B解析:这道题考察的是Java中的方法重载规则。在Java中,方法重载要求方法名相同,但参数列表(参数类型、个数、顺序)必须不同。选项B中的方法与类中已定义的`max`方法(`publicintmax(intA,intb)`)具有相同的参数类型和数量,只是参数名不同,这不符合方法重载的规则,因此是不合法的。104.如下程序输出()PublicclassTest{Publicstaticvoidmain(String[]args){Strings="Java";StringBuilderbuffer=newStringBuilder(s);Change(s);System.out.println(s);}Privatestaticvoidchange(Strings){S=s+"andHTML";}}A、JavaB、JavaandHTMLC、andHTMLD、什么都不显示答案:A105.以下程序中,横线处正确的语句是?Class____________{Intx;Intget(){returnx;}ABC(inti){x=i;}Voidshow(){System.out.println(x);}}A、showB、getC、ABCD、以上都可以答案:C106.Java应用程序经过编译后会产生一个以()为扩展名的字节码文件A、javaB、classC、exeD、html答案:B107.已知类的继承关系如下:ClassEmployee;ClassManagerextendsEmployee;ClassDirectorextendsEmployee;则以下语句哪个能通过编译?()。A、Employeee=newManager();B、Managerm=newDirector();C、Directord=newManager();D、irectord=newEmployee();答案:A108.list是一个ArrayList的对象,哪个选项的代码填写到//tododelete处,可以在Iterator遍历的过程中正确并安全的删除一个list中保存的对象?(){Iteratorit=list.iterator();Intindex=0;While(it.hasNext()){Objectobj=it.next();If(needDelete(obj)){//needDelete返回boolean,决定是否要删除//tododelete}Index++;}}A、list.remove(obj);B、list.remove(index);C、list.remove(it.next());D、it.remove();答案:D109.数组与集合的描述不正确的是A、数组是固定长度的;集合可变长度的。B、数组可以存储基本数据类型,也可以存储引用数据类型;C、集合可以存储基本数据类型,也可以存储引用数据类型;D、数组存储的元素必须是同一个数据类型;集合存储的对象可以是不同数据类型。答案:C110.声明了一个数组double[]list={3.4,2.0,3.5,5.5},list[1]是()。A、3.4B、2.0C、3.5D、不确定答案:B111.返回Collection中的元素数量的方法是()。A、length()B、capacity()C、size()D、count()答案:C112.关于对StringBuffer对象的操作,有如下程序代码,程序运行的结果是()。StringBufferbuf=newStringBuffer("abcde");Buf.reverse();System.out.println(buf);A、bcdeB、edcbaC、abcdD、edcb答案:B113.想得到文件(目录)的名称,如:{Filefile1=newFile(""F:\\abc\\"");//-->abcFilefile2=newFile(""F:\\abc.txt"");//-->abc.txt需要使用java.io.File类的对象调用()方法。}A、toString()B、getName()C、getAbsolutePath()D、getParent()答案:B114.Iterator类中的哪个方法用于获得数据结构中的下一个元素A、hasNext()B、remove()C、next()D、nextId()答案:C115.已知代码:ClassPerson{PrivatestaticStringcountry="A城市";Stringname;PublicstaticvoidsFun(Stringc){System.out.println("name="+name);Fun(c);}Publicvoidfun(Stringc){Name="name1";Country=c;}}关于static,下面描述错误的是()。A、上述代码在编译时出错,因为在static方法sFun中访问了非static变量nameB、上述代码在编译时出错,因为在static方法sFun中访问了非static方法fun()C、sFun方法正确D、fun方法正确答案:C116.执行完以下代码int[]xx=newint[25];后,以下哪项说明是正确的()。A、x[24]为0B、x[25]为0C、x[0]为空D、x[24]未定义答案:A117.下列数组a中,能在程序运行时动态调整大小的是()。A、inta[]B、String[]aC、a=newArrayList()D、a=newArray()答案:C118.以下关于JVM的叙述正确的是()A、JVM支持Java程序运行,不能够直接运行Java字节码文件B、JVM支持Java程序运行,能够直接运行Java源文件C、JVM运行于操作系统之上,与操作系统无关D、JVM运行于操作系统之上,依赖于操作系统答案:D119.()方法是Java程序执行的入口,含有该方法的类叫做()。A、main主类B、Main主类C、main公共类D、Main公共类答案:A120.现有声明Circlex=newCircle(),如下哪句是最确切的。()A、x包含了一个int型数据。B、x包含了一个Circle类型的对象。C、x包含了一个Circle对象的引用。D、x可将一个int型数据赋值给x。答案:C解析:中121.关于字符串的方法,如下代码执行结果是()。Stringstr1="abcd";Stringstr2="sdut";System.out.println(pareTo(str2)>0);A、trueB、falseC、1D、-1答案:B122.有语句Strings=”helloworld”;,以下操作哪个是不合法的?()A、inti=s.length();B、s>>>=3;C、Stringts=s.trim();D、Stringt=s+”!”;答案:B123.在Java中,以下()类的对象是以键-值的方式存储对象。A、ListB、ArrayListC、HashMapD、LinkedList答案:C124.下面选项中不是开发Java程序的步骤()A、编译B、编写源代码C、运行D、发布答案:D125.有如下程序代码,程序运行的结果是()。Strings1="sdut";Strings2="sdut";System.out.print(s1==s2);System.out.println(""+s1.equals(s2));A、truefalseB、truetrueC、falsetrueD、falsefalse答案:B126.请问,为了使一个名为MyClass的public类成功编译,需要满足以下哪些条件?A、MyClass必须定义一个正确的main()方法B、MyClass必须定义在MyClass.java源文件中C、MyClass必须定义在MyClass包中D、MyClass类必须被导入答案:B127.下面哪个流类属于面向字符的输入流()。A、BufferedWriterB、FileInputStreamC、ObjectInputStreamD、InputStreamReader答案:D128.在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数的个数、类型或顺序各不相同,传回的值也可以不相同,这种面相对象程序特性称为()。A、隐藏B、覆盖C、重载D、Java不支持此特性答案:C129.JVM中,存放局部内部类对象的内存区域是A、堆区B、栈区C、方法区D、常量池答案:A130.在Java中,当方法遇到异常又不知如何处理时,建议采取以下哪个选项?A、捕获异常B、抛出异常C、声明异常D、嵌套异常答案:C131.如下语句执行结果是:()。{Int[]intArr=newint[10];System.out.println(intArr[0]);}A、编译错误B、会报运行错误C、0D、"null"答案:C132.一个类在重写其父类的某个方法时,在重写方法的定义中,哪个部分可以与父类被重写方法的定义不同?A、访问修饰符B、方法名C、返回值类型D、方法形参答案:A133.现有如下程序:{List<String>students=newArrayList<String>();Students.add("Alex");Students.add("Bob");Students.add("Carl");For(intk=0;k<students.size();k++){System.out.print(students.set(k,"Alex")+"");}System.out.println();For(Stringstr:students){System.out.print(str+"");}请问,若执行以上代码的输出为?}A、{AlexAlexAlexAlexAlexAlex}B、{AlexAlexAlexAlexBobCarl}C、{AlexBobCarlAlexAlexAlex}D、{AlexBobCarlAlexBobCarl}E、当执行第一个print语句将导致抛出runtimeexception,不会打印任何内容。答案:C解析:这道题考查对Java中集合操作和循环的理解。在第一个循环中,通过`students.set(k,"Alex")`改变了元素值。第二个循环输出修改后的集合。根据代码逻辑,初始集合为{"Alex","Bob","Carl"},第一个循环修改后变为{"Alex","Alex","Alex"},第二个循环输出的就是修改后的结果,所以答案是C。134.下列关于条件语句的描述中,错误的是()A、if语句中的条件表达式是一个布尔值。B、选择语句分为if条件语句和switch条件语句。C、switch语句中的表达式只能是布尔类型的值。D、switch语句只能针对某个表达式的值作出判断。答案:C135.阅读下列程序:ClassTest{PrivatestaticStringname;Static{Name="World";System.out.print(name);}Publicstaticvoidmain(String[]args){System.out.print("Hello");Testtest=newTest();}}下列选项中,程序运行结果是()A、HelloWorldB、WorldHelloC、HelloD、World答案:B136.下面程序运行结果是{PublicclassFoo{Publicstaticvoidmain(String[]args){Try{Return;}finally{System.out.println("Finally");}}}}A、程序正常运行,但不输出任何结果。B、程序正常运行,并输出"Finally"。C、编译能通过,但运行时会出现一个例外。D、因为没有catch语句块,所以不能通过编译。答案:B137.访问修饰符作用范围由大到小是A、private-default-protected-publicB、public-default-protected-privateC、private-protected-default-publicD、public-protected-default-private答案:D138.在Java的一个异常处理中,下列的语句块可以有多个的是?A、catchB、finallyC、tryD、throws答案:A139.以下()添加到ComputerBook中不会出错ClassBook{ProtectedintgetPrice(){Return30;}}PublicclassComputerBookextendsBook{}A、protectedfloatgetPrice(){}B、protectedintgetPrice(intpage){}C、intgetPrice(){}D、publicintgetPrice(){return10;}答案:D140.下面程序段的运行结果是()。{Intx=30;Intnum[]=newint[x];X=60;System.out.println(num.length);}A、60B、20C、30D、50答案:C141.关于字符串的比较,如下代码执行结果是()。Strings1="imooc";Strings2="Ilove"+s1;Strings3="Iloveimooc";System.out.println(s2==s3);A、trueB、falseC、0D、1答案:B142.若在某一个类定义中定义有如下的方法:finalvoidaFinalFunction(),则该方法属于()。A、本地方法B、静态方法C、最终方法D、抽象方法答案:C143.private级的成员可以被哪些对象访问A、同一包中的其他类B、仅同一类的私有成员方法C、仅同一类的所有成员方法D、所有其他类答案:C144.字符流与字节流读写数据的区别在于()。A、前者带有缓冲,后者没有B、前者是块读写,后者是字节读写C、二者没有区别,可以互换使用D、每次读写数据的组织单位不同答案:D145.对String类型的字符串Stringstr="abcd",调用str对象的()方法,得到char类型的数组['a','b','c','d']?A、toCharArray()B、toChars()C、getChars()D、getBytes()答案:A146.下面Java程序的运行结果是?{Importjava.io.∗;PublicclassTest{Publicstaticvoidmain(Stringargs[]){Inti;Inta[]={11,22,33,44,55,66,77,88,99};For(i=0;i<=a.length/2;i++)System.out.print(a[i]+a[a.length-i-1]+"");System.out.println();}}}A、110110B、110110110C、110D、110110110110110答案:D147.下哪个标识符不合法?A、_sys1_lllB、2mailC、$changeD、Class答案:B148.下列A类的类体中哪些【代码】是错误的。ClassA{Intx;//【代码1】Longy=x;//【代码2】Publicvoidf(intn){Intm;//【代码3】Intt=n+m;//【代码4】}}A、【代码1】B、【代码2】C、【代码3】D、【代码4】答案:C149.在下面的代码段中,下列m的()值将引起“default”的输出。Importjava.util.Scanner;PublicclassMain{Publicstaticvoidmain(String[]args){Scannerinput=newScanner(System.in);Intm=input.nextInt();Switch(m){Case0:System.out.println("case0");Case1:System.out.println("case1");break;Case2:Default:System.out.println("default");}}}A、0B、1C、2D、以上答案都不正确答案:C150.下列选项中,可以正确实现String初始化的是A、Stringstr='hello';B、Stringstr=12345;C、Stringstr="product";D、Stringstr=good;答案:C151.下面说法错误的是:A、inti=1,j=1;System.out.print(i==j);输出结果为true。B、inti=100,j=100;System.out.print(i==j);输出结果为true。C、Integeri=100,j=100;System.out.print(i==j);输出结果为true。D、Integeri=1000,j=1000;System.out.print(i==j);输出结果为true。答案:D152.以下哪个Java程序段是错误的?A、Strings="Gonewiththewind";Stringt="good";Stringk=s+t;B、Strings="Gonewiththewind";Stringt;T=s[3]+"one";C、Strings="Gonewiththewind";Stringstandard=s.toUpperCase();D、Strings="homedirectory";Stringt=s-"directory";答案:D153.给出下面代码,关于该程序以下哪个说法是正确的?(){PublicclassPerson{Staticintarr[]=newint[5];Publicstaticvoidmain(Stringa[]){System.out.println(arr[0]);}}}A、编译时将产生错误B、编译时正确,运行时将产生错误C、输出0D、输出空答案:C154.假设一个方法p有如下的方法头publicstaticint[][]p(),在p()中可能的返回值是()。A、return1;B、return{1,2,3};C、returnnewint[]{1,2,3};D、returnnewint[][]{{1,2,3},{2,4,5;答案:D155.以下对TCP和UDP描述正确的是A、TCP不能提供数据的可靠性B、UDP能够保证数据库的可靠性C、TCP数据传输效率高于UDPD、UDP数据传输效率高于TCP答案:D156.分析如下代码。ClassCircle{Privatedoubleradius;PublicCircle(doubleradius){Radius=radius;}}如下哪句是正确的?A、程序有一个编译错误,因为没有main方法。B、程序可以编译,但没有创建一个特定radius的Circle对象。对象的radius始终为0。C、程序有一个编译错误,因为不能radius=radius。D、程序无法编译,因为Circle没有缺省的构造函数。答案:B157.关于继承的说法正确的是:()A、子类将继承父类所有的属性和方法B、子类将继承父类的非私有属性和方法C、子类只继承父类public方法和属性D、子类只继承父类的方法,而不继承属性答案:B158.若inta[][]={{123,345,334},{1,2},{3,4}};则a[2][1]=()。A、1B、3C、2D、4答案:D159.下列有关Java语言的叙述中,正确的是A、Java是不区分大小写的B、源文件名与public类型的类名必须相同C、源文件名的扩展名为.jarD、源文件中public类的数目不限答案:B160.Java中打开文件Employee.dat时,以下可以使用该文件作为参数的类是?A、BufferReaderB、DataInputStreamC、DataOutoutStreamD、FileInputStream答案:D161.下面概念中,不属于面向对象编程范畴的是()。A、对象B、继承C、类D、过程调用答案:D162.下列哪个叙述是正确的?A、Java应用程序由若干个类所构成,这些类必须在一个源文件中B、Java源文件必须含有主类C、Java源文件的文件名必须与public类名完全相同D、Java应用程序由若干个类所构成,这些类可以在一个源文件中,也可以分布在若干个源文件中,其中每个源文件必须含有主类。答案:C163.下面关于Java的引用的说法正确的是______。A、引用实际上就是指针B、引用本身是原始类型(primitivetype)C、引用就是对象本身D、一个对象只能被一个引用所指示答案:A164.下列关于修饰符使用的说法,错误的是()。A、bstract不能与final并列修饰同一个类B、abstract类中可以有private的成员C、abstract方法必须在abstract类中D、static方法中能访问非static的属性答案:D165.Java中,Math类中生成[0,1)之间,伪随机小数的方法是A、Random()B、sqrt()C、eil()D、random()答案:D166.如下程序会抛出()类型的异常?{PublicclassTest{Publicstaticvoidmain(String[]args){Objecto=newObject();Stringd=(String)o;}}}A、rithmeticExceptionB、ArrayIndexOutOfBoundsExceptionC、StringIndexOutOfBoundsExceptionD、ClassCastException答案:D167.使用UDP协议进行通信,在程序运行时,DatagramSocket的哪个方法会发生阻塞?()A、send()B、receive()C、lose()D、connect()答案:B168.在Java中,以下程序段的输出结果是()。Intn=9;While(n>6){N--;System.out.print(n);}A、987B、876C、8765D、9876答案:B169.关于以下Java程序代码,编译运行时,以下叙述哪项是正确的?PublicclassPerson{Intarr[]=newint[10];Publicstaticvoidmain(Stringa[]){System.out.println(arr[1]);}}A、编译时出错。B、编译时正确而运行时出错。C、编译正确,运行输出0。D、编译正确,运行输出null答案:A170.下列程序的运行结果是(){PublicclassTest{Publicstaticvoidmain(String[]args){Try{System.out.println("WelcometoJava");Return;}Finally{System.out.println("Thefinallyclauseisexecuted");}}}}A、WelcometoJavaB、WelcometoJava,然后是ThefinallyclauseisexecutedC、ThefinallyclauseisexecutedD、以上都不是答案:B171.以下Java程序代码段,输出结果是Strings1="abc";Strings2="abcd";System.out.println(pareTo(s1));A、-1B、1C、100D、-100答案:B172.关于字符串的构造方法,如下代码执行结果是()。Stringstr="ABCDEFG";Char[]chars=str.toCharArray();System.out.println(newString(chars,1,3));A、BCB、CDC、ABD、BC答案:B173.在Java中,下面对于构造函数的描述正确的是。A、类必须显示定义构造函数B、构造函数的返回类型是voidC、一个类可以定义多个构造函数D、构造函数和类有相同的名称,并且不能带任何参数答案:C174.在编写Java程序时,若需要使用到标准输入输出流的若干个类,导入包时宜在程序的开头写上()语句。A、importjava.awt.∗;B、importjava.applet.Applet;C、importjava.io.∗;D、importjava.awt.Graphics;答案:C175.使用Iterator时,判断是否存在下一个元素可以使用以下哪个方法()A、next()B、hash()C、hasPrevious()D、hasNext()答案:D176.如果要在程序中使用Scanner对象,以下哪个说法是错误的?A、添加语句Importjava.util.Scanner;B、添加语句Importjava.util.∗;C、不添加import语句,直接使用Scanner类。D、在使用到Scanner的地方,类名前加上包名,即java.util.Scanner答案:C177.下列哪个一个操作不能使线程从等待阻塞状态进入对象阻塞状态()。A、等待阻塞状态下的线程被notify()唤醒B、等待阻塞状态下的纯种被interrput()中断C、等待时间到D、等待阻塞状态下的线程调用wait()方法答案:A178.Java应用程序的main方法中有以下语句段,则运行输出的结果是?Strings1=newString("abc");Strings2=newString("abc");Booleanb1=s1.equals(s2);//根据toString()方法和Booleanb2=(s1==s2);System.out.print(b1+""+b2);A、truefalseB、falsetrueC、truetrueD、falsefalse答案:A179.以下关于File类说法正确的是()。A、Fi

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论