您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 项目/工程管理 > java语言程序设计期末试卷A
第1页一、单项选择题(每题3分,共30分)1、下述字符组合不能..作为Java程序标识符的是()A、Aa12B、$xC、y2zD、5x2、以下程序代码的输出的结果是()intx=53;System.out.println(1.0+x/2);A、27.0B、27.5C、1.026D、1.026.53、下列特点不属于java的是()A、多线程B、多继承C、跨平台D、动态4、下列说法正确的是()A、Set集合中的元素可以重复B、Map集合中的元素不能重复C、List集合中的元素不允许重复D、Map集合中的元素可以重复,但key不能重复5、用Thread子类实现多线程的步骤顺序是()A、声明Thread类的子类,创建Thread子类的实例,让线程调用start()方法B、声明Thread类的子类,在子类中重新定义run()方法,创建Thread子类的实例C、创建Thread子类的实例,让线程调用start()方法D、声明Thread类的子类,在子类中重新定义run()方法,创建Thread子类的实例,让线程调用start()方法6、可以为16位字符流提供读和写操作支持的类分别是()A.FileInputStream类和FileOutputStream类B.InputStream类和OutputStream类C.FileReader类和FileWriter类D.File_Reader类和File_Writer类7、要实现序列化,序列化类必须实现的接口是()A、SerializableB、RunnableC、ThreadD、Extenalizable8、下列输出的结果是()。classAA{publicvoidshow(){System.out.println(“类AA”);}}classBBextendsAA{publicvoidshow(){System.out.println(“类BB”);}}publicclassTest{publicstaticvoidmain(Stringargs[]){AAa=newAA();a.show();a=newBB();a.show();}}A、类AAB、类BBC、类BBD、类AA类BB类AA类BB类AA9、关于抽象类和接口,下列说法正确的是()A、抽象类不能有非抽象方法B、接口可以有构造方法C、可以用new方法实例化接口和抽象类D、抽象类和接口不能实例化对象10、下列代码块执行完后,x的值是()intx=2;inta=2,b=0;try{x++;x=a/b;x+=a;}catch(Exceptione){System.out.println(e.getMessage());}finally{x*=a;}A、0B、2C、4D、6第2页二、填空题(每空2分。共30分)11、Java源程序文件和字节码文件的扩展名分别为______和_____________。12、在比较两个对象的值是否相同时,可以调用_______方法。13、用条件运算符构造一个表达式:goal等于10时,表达式的值为“对了!”,否则,表达式的值为“错了!”。这个表达式是________。14、程序员用Java语言编写多线程应用程序,程序员能控制的关键性工作有两个方面:一是编写线程的_________方法;二是建立线程实例。15、jdbc编程时,应导入的包是。16、classAAimplementsBB{………}则AA和BB的关系是。17、设有数组定义:int[]MyIntArray={10,20,30,40,50,60,70};则执行下面几个语句后的输出结果是_______。ints=0;for(inti=0;iMyIntArray.1ength;i++)s+=MyIntArray[i];System.out.println(S);18、在javaI/O编程时,要使用带缓冲的字节流输入,应使用类。19、被调方法中产生异常后,要让异常由调用方法处理,在被调方法定义中使用关键字。20、User为一个类,user1和user2是User类的两个引用,if(user1==user2){……}语句中,“==”运算符比较的是user1和user2。21、为了让一个类不能被派生子类,在定义这个类时要用关键字。22、一个源文件中只能有一个和文件名相同名称的类,这个类要用关键字修饰。23、classB{privateintb;publicintgetB(){returnb;}B(intx){b=x;System.out.print(“b=”+b);}}classAextendsB{privateinta;A(intx,inty){super(x);a=y;System.out.println(,a=+a);}}publicclassTest{publicstaticvoidmain(String[]args){Aobj=newA(1,2);}}上述程序的输出结果是。24、设有数组定义int[][]x={{1,2},{3,4,5},{6},{7}};,则x.length的值为。三、程序填空题(每空2分,共20分)25、以下定义的类ShareData用于管理多个线程共享数据data。一个线程生成data,另一个线程使用data。约定,新生成的data只有被另一个线程使用后,才能生成下一个data。反之,一个data被使用后,也不能再继续使用。所以,生成和使用data的线程之间需要互斥和同步。以下是管理上述使用方式的类,类内有要管理的共享数据,以及对共享数据的存操作putData()和取操作getData()。classShareData{intdata;∥共享数据booleannewData=false;∥有最近新生成data的标志,有date为truepublicsynchronizedintgetData(){if(!newData){try{;}catch(InterruptedExceptione){System.out.println(″因错误,而中断!″);}}newData=;notify();returndata;}publicvoidputData(intn){if(!newData){data=n;newData=__________;;}try{wait();}catch(InterruptedExceptione){第3页System.out.println(″因错误,而中断!″);}}}26、下面方法实现了文件复制,src是源文件路径名字符串,dest是目标文件路径名字符串。publicstaticvoidcopy(Stringsrc,Stringdest){Filefrom=newFile(src);Fileto=newFile(dest);if(){System.out.println(源文件不存在!);return;}Fileparent=to.getParentFile();booleanf=true;if(!parent.exists()){//如果目标文件所在的文件夹不存在,建立文件夹f=;}if(f){BufferedInputStreamin=null;BufferedOutputStreamout=null;try{to.createNewFile();in=newBufferedInputStream(new(from));out=newBufferedOutputStream(newFileOutputStream(to));System.out.println(正在复制中!);inti;while((i=in.read())!=){;}System.out.println(文件复制成功!);}catch(IOExceptionex){ex.printStackTrace();}finally{if(in!=null){try{in.close();}catch(IOExceptionex){ex.printStackTrace();}}if(out!=null){try{out.close();}catch(IOExceptionex){ex.printStackTrace();}}}}}四、程序分析题(每题4分,共8分)27、阅读下列程序,请写出该程序的输出结果。publicclassA{intm=5;staticintn=3;publicstaticvoidmain(String[]args){Aobj1=newA();Aobj2=newA();objl.m*=2;objl.n*=4;obj2.m+=1;obj2.n+=6;System.out.println(obj1.m=”+obj1.m);System.out.println(obj1.n=+obj1.n);System.out.println(obj2.m=+obj2.m);System.out.println(obj2.n=+obj2.n);}}28、写出下列程序运行的输出结果classParent{privatevoidmethod1(){System.out.println(″Parent′smethod1()″);}publicvoidmethod2(){System.out.println(″Parent′smethod2()″);method1();}}classChildextendsParent{publicvoidmethodl(){System.out.println(″Child′smethod1()″);}publicstaticvoidmain(Stringargs[]){Parentp=newChild();p.method2();}}第4页五、程序设计题(每题6分。共12分)29、请编写方法doubleaverageOfArray(double[]a),返回非空数组中正数的平均值(数组中可能有非正数元素)。30、Dbutil类中已实现publicstaticConnectiongetConnection()方法和publicstaticvoidclose(ResultSetrs,PreparedStatementps,Connectionconn)方法。getConnection方法取得数据库连接,close方法关闭连接及相关数据库操作对象。利用Dbutil类,编写方法publicbooleaninsertUser(Stringname,Stringpassword)方法,采用预编译SQL语句向数据库表user中插入新用户,插入成功返回true,失败返回false。user表中字段为namevachar(40),passwordVarchar(40)。答案一、单项选择题(每题3分,共30分)1、D2、A3、B4、D5、D6、C7、A8、A9、D10、D二、填空题(每空2分,共30分)11、javaclass12、equals()13、goal==10?“对了”:“错了”14、run()15、java.sql16、AA类实现BB接口17、28018、BufferedInputStream19、throws20、是否指向同一个Uesr对象21、final22、public23、b=1,a=224、4三、程序填空题(每空2分,共20分)25、wait()falseSyschronizedtruenotify()26、!from.exists()parent.mkdirs()FileInputStream-1out.write(i)四、程序分析题(每题4分,共8分)27、obj1.m=1028、Parent′smethod2()obj1.n=18Child′smethod1()obj2.m=6obj2.n=18五、程序设计题(每题6分,共12分)29、publicdoubleaverageOfArray(double[]a){doubleaverage=0;doubles=0;intnum=0;for
本文标题:java语言程序设计期末试卷A
链接地址:https://www.777doc.com/doc-2879080 .html