您好,欢迎访问三七文档
当前位置:首页 > 建筑/环境 > 工程监理 > java训练题3答案
训练题三一、选择题1.下面关于Java的说法不正确的是(A)A.abstract和final能同时修饰一个类B.抽象类做抽象父类,也可以做抽象子类和抽象方法C.抽象方法不一定在抽象类中,也可以在接口中D.声明为final的方法不能在子类中重新定义2.下面关于接口的说法中不正确的是(C)A.接口所有的方法都是抽象的B.接口所有的方法一定都是public属性的C.用于定义接口的关键字是implementsD.接口是Java中的特殊类,包含常量和抽象方法3.关于内部类下列说法不正确的是(A)A.内部类不能有自己的成员方法和成员变量B.内部类可用abstract修饰定义为抽象类,也可以用private或protected定义C.内部类可作为其他类的成员,而且可访问它所在类的成员D.除static内部类外,不能在类内部声明static成员4.下面关于继承的叙述正确的是(A)A.在Java中类间只允许单一继承B.在Java中一个类只能实现一个接口C.在Java中一个类不能同时继承一个类和实现一个接口D.在Java中一个类可以同时继承多个类5.如果创建一个子类覆盖一个public方法,则对该方法可以使用哪些修饰符(A)A.publicB.public和protectedC.privateD.任意修饰符都可以6.下面哪一个Java源文件代码段是不正确的?(B)A.packagetestpackage;B.importjava.io.*;publicclassTest{}packagetestpackage;publicclassTest{}C.importjava.io.*;D.importjava.io.*;classPerson{}importjava.awt.*;publicclassTest{}publicclassTest{}7.关于异常的含义,下列描述中最正确的一个是(D)A.程序编译错误B.程序语法错误C.程序自定义的异常事件D.程序编译或者运行时发生的异常事件8.抛出异常时,应该使用下列哪个子句?(A)A.throwB.catchC.finallyD.throws解析:选项B中,catch子句应该与try子句匹配使用,但不是用来抛出异常的;选项C中,finally子句用于为异常处理提供统一的出口;比较有迷惑性的是选项D,throws子句是用来声明异常的,它属于方法声明的一部分,位于自变量(参数)列表的后面,如:voidf()throwsexception1,exception2选项A中,程序中通过使用throw子句再次抛出异常,如:IOExceptionioe=newIOException;throwioe;9.当方法产生该方法无法确定该如何处理的异常时,应该如何处理?(A)A.声明异常B.捕获异常C.抛出异常D.嵌套异常解析:在Java语言中,一个方法生成一个异常时,该方法不一定能确定应该如何处理异常,如找不到文件之类的异常,必须将异常传递给调用方法,由调用它的方法来处理这类异常,通过方法声明异常抛出,让异常对象可以从调用堆栈向后传递,直到有相应的方法捕获它为止。10.下列描述中,错误的是(C)A.算术溢出需要进行异常处理B.在方法中监测到错误但不知道如何处理错误时,方法就声明一个异常C.一个程序抛出异常,任何其他在运行中的程序都可以捕获D.任何没有被程序捕获的异常将最终被默认处理程序处理解析:不是任何其他在运行中的程序都可以捕获一个程序抛出的异常,而是由Java虚似机中的标准异常处理程序来捕获。11.下列数据流中,属于输入流的一项是(B)A.从内存流向硬盘的数据流B.从键盘流向内存的数据流C.从键盘流向显示器的数据流D.从网络流向显示器的数据流解析:常用的外部设备一般包括:键盘、显示器、硬盘、扫描仪、打印机和网络等。而中央处理器通常包括控制器和内存。输入流是指由外设流向中央处理器的数据流,因此只有选项B从键盘外设流向内存的数据流是输入流。选项C和选项D都是从外设流向外设的数据流,这一般是经过了先输入,再输出的过程,因此不属于输入流。12.下列程序从标准输入设备键盘读入一个字符,然后再输出到显示器上,选择正确的一项填入x处,使程序编译通过。(B)importjava.io.*;publicclassTest10{publicstaticvoidmain(String[]args){charch;try{//xSystem.out.println(ch);}catch(IOExceptione){e.printStackTrace();}}}A.ch=System.in.read();B.ch=(char)System.in.read();C.ch=(char)System.in.readln();D.ch=(int)System.in.read();13.下列哪一项不是File类的功能?(D)A.新建文件B.新建目录C.删除文件D.修改文件14.下列程序实现了新建一个文件file12.txt,并且在文件中写入字节数据。执行程序之后,文件file12.txt中的内容是(A)packagech7;importjava.io.*;publicclassex12{staticStringfile=”ch7\\file12.txt”;publicstaticvoidmain(String[]args){try{FileOutputStreamfos=createFile();writeFile(fos);}catch(IOExceptionioe){System.out.println(ioe.getMessage());}}staticFileOutputStreamcreateFile()throwsIOException{Filef=newFlie(file);FileOutputStreamfos=newFileOutputStream(f);returnfos;}staticvoidwriteFile(FileOutputStreamo)throwsIOException{DataOutputStreamdos=null;try{dos=newDataOutputStream(o);dos.writeBytes(“Hello!”);}finally{if(dos!=null)dos.close();}}}A.Hello!B.HC.HeD.产生IOException15.已知文件file13.txt中的内容是:一共有3行,每行分别是实型的数值1.0,2.3,2.5,则下列程序执行之后,输出的结果是(A)packagech7;importjava.io.*;publicclassex13{staticStringstrName=”ch7\\file13.txt”;publicstaticvoidmain(String[]args){try{FileReaderfr=newFileReader(strName);BufferedReaderbr=newBufferedReader(fr);Stringstr;while((str=br.readLine())!=null){floatf=Float.parseFloat(str);System.out.println(f);}br.close();fr.close();}catch(Exceptione){System.out.println(e.getMessage());}}}A.1.0B.1.0C.2.3D.显示异常信息2.32.52.516.现在文件file14.txt,包含3行文本:ncrexaminationokilikeit下列程序执行之后,在屏幕上输出(B)packagech7;importjava.io.*;publicclassex14{staticStringfileName=”ch7\\file14.txt”;publicstaticvoidmain(String[]args){try{Filef=newFile(fileName);FileInputStreamfis=newFileInputStream(f);byte[]b=newbyte[8];inti=fis.read(b);fis.close();for(intj=0;jb.length;j++)System.out.print((char)b[j]);}catch(IOExceptione){e.printStackTrace();}}}A.ncrB.ncrexamC.ncrexaD.ncrexami17.在下列程序的横线下填入正确的语句,实现RandomAccessFile类的使用。(C)packagech;importjava.io.*;publicclassex15{publicstaticvoidmain(String[]args){try{RandomAccessFilein=_________________;in.close();}catch(Exceptione){e.printStackTrace();}}}A.RandomAccessFile(“r”,”ch/file.dat”)B.RandomAccessFile(“ch/file.dat”,”read”)C.RandomAccessFile(“ch/file.dat”,”r”)D.RandomAccessFile(“read”,”ch/file.dat”)18.下列程序使用RandomAccessFile类打印出自己的源文件,并且在每一行前面加上行号,选择正确的一个语句填入程序的横线处。(A)packagech;importjava.io.*;publicclassex16{publicstaticvoidmain(String[]args){try{RandomAccessFilerf=newRandomAccessFile(“ch\\ex16.java”,”r”);Stringstr;longpointerOfFile=0;longlengthOfFile=rf.length();rf.seek(pointerOfFile);inti=1;while(pointerOfFilelengthOfFile){str=rf.readLine();System.out.println((i++)+””+str);pointerOfFile=__________;}rf.close();}catch(IOExceptione){e.printStackTrace();}}}A.rf.getFilePointer()B.RandomAccessFile.getFilePointer()C.rf.getPointer()D.getFilePointer()19.下列程序中创建一个文件输出流对象out向目录ch下已有的文件file17.txt(内容为:“TUVWXYZ”),最后追加字符串”zyxwvut”中的所有字符,请选择正确的语句填入横线处。(C)packagech;importjava.io.*;publicclassex17{staticStringfilename=”ch\\file17.txt”;publicstaticvoidmain(String[]args){try{Stringstr=”zyxwvut”;byte[]b;FileOutputStreamout=__________;b=str.getBytes();out.write(b,0,b.length);out.write(str);out.close();}catch(IOExceptione){e.printStackTrace();}}}A.newFileOutputStream(filename)B.newFileOutputStream(filename,false)C.newFileOutputStream(filename
本文标题:java训练题3答案
链接地址:https://www.777doc.com/doc-2878981 .html