1Java软件工程师企业测评测试题一、选择题:(每题2分)1.名为HelloWorld.java的Java应用程序如下:BpublicclassHelloWorld{publicstaticvoidmain(Stringargs[]){System.out.println(HelloWorld!);}}将这个程序放在C:\Test下,然后在命令行窗口中,进入到C:\Test路径执行如下指令:javachelloworld.java将得到什么结果?A.编译出错。B.编译成功,生成名为HelloWorld.class的文件。C.编译成功,生成名为helloworld.class的文件。D.找不到名为helloworld.java的文件。2.下面的程序名为Student.java:BpublicclassStudent{privateStringname;publicStudent(Strings_name)//1{name=s_name;//2}publicstaticvoidmain(Stringargs[]){Students=newStudent();//3}}使用如下指令编译:javacStudent.java。将会得到什么结果?A.将会顺利通过编译,并将产生一个Student.class的类文件。B.编译时在//3处出错。C.编译时在//2处出错。D.编译时在//1处出错。3.关于下面的类描述中正确的是:CclassTest{//1voidtest(inti){//2System.out.println(Iamanint.);//3}//42voidtest(Strings){//5System.out.println(Iamastring.);//6}//7//8publicstaticvoidmain(Stringargs[]){//9Testt=newTest();//10charch='y';//11t.test(ch);//12}//13}//14A.编译出错B.编译通过,运行出错C.编译通过,运行时输出“Iamanint”D.编译通过,运行时输出“Iamastring”4.关于下述程序:CpublicclassTest3{publicstaticvoidmain(String[]agrs){byteb=2,e=3;//1bytef=b+e;//2System.out.println(f);//3}}描述正确的是?A.编译通过,运行时打印出5。B.编译通过,运行时打印出23。C.编译不通过,在//2处有错误,因为此处f必须是一个int类型的变量。D.编译不通过,在//1处有错误,不能这样定义变量5.关于下述程序:DpublicclassDivide{publicstaticvoidmain(Stringargs[]){System.out.println(17.0/0=+17.0/0);//1System.out.println(17/0=+17/0);//2}}描述正确的是?A.编译出错B.编译通过,运行时//1、//2处均出现异常C.编译通过,运行时//1处得到一个无穷大值,//2处将出现异常D.编译通过,运行时//1处出现异常,//2处将得到一个无穷大值6.关于下述程序:D3publicclassTest4{publicstaticvoidmain(String[]agrs){doublex=1.234;//1doubley=2;//2System.out.println(+x+y);//3System.out.println(x+y+);//4}}描述正确的是?A.编译出错。B.编译通过,执行的时候在//2处报错。C.编译通过,执行时在//3处打印出3.234,在//4处打印出3.234。D.编译通过,执行时在//3处打印出1.2342.0,在//4处打印出3.234。8.下述程序:CpublicclassTest9{staticinti=1;static{i++;}publicTest9(){i++;}publicstaticvoidmain(String[]args){Test9t1=newTest9();System.out.println(t1.i);//1Test9t2=newTest9();System.out.println(t2.i);//2}}编译运行后在//1和//2处分别打印出什么值?A.2和2B.3和3C.3和4D.4和39.关于下述三个接口:DpublicinterfaceIA{publicvoidmethodA();}4publicinterfaceIB{publicvoidmethodB();}publicinterfaceICextendsIA,IB{publicvoidmethodA();}正确的是?A.接口IC不能通过编译,因为它继承了两个接口。B.接口IC不能通过编译,因为它定义了一个和IA中一样的方法methodA()。C.接口IC不能通过编译,因为它继承了两个接口,并且还定义了一个和IA一样的methodA()方法。D.接口IC能够顺利通过编译。10.下述语句执行结果为:A、Bint[]arr=newint[10];A.arr[0]是0B.arr[9]是0C.arr[10]是0D.arr[0]是null11.关于break和continue语句,下面哪些说法是错误的?DA.break只能用于循环语句中。B.continue只能用于循环语句中。C.在循环语句中,break语句将终止循环;而continue是略过当前循环中剩余的语句进入下一次循环。D.在循环语句中,continue语句将终止循环;而break是略过当前循环中剩余的语句进入下一次循环。12.下面哪些标识符是合法的?A.C.DA.IAMAClassB.$byteC.constD._year13.关于垃圾收集的哪些叙述是对的?BA.程序开发者必须自己创建一个线程进行内存释放的工作。B.垃圾收集将检查并释放不再使用的内存。C.垃圾收集允许程序开发者明确指定并立即释放该内存。D.垃圾收集能够在期望的时间释放被java对象使用的内存。14.下面的程序的输出结果是:(B)classSuperClass{static{System.out.println(---SuperClass---);}SuperClass(){System.out.println(SuperClass());}publicstaticvoidmain(String[]args){SubClasssc=newSubClass();}}5classSubClassextendsSuperClass{static{System.out.println(---SubClass---);}SubClass(){System.out.println(SubClass());}}A.SuperClass/SubClass/SuperClass()/SubClass()/B.SuperClass/SuperClass()/SubClass/SubClass()/C.SubClass/SuperClass/SubClass()/SuperClass()/D.SubClass/SubClass()/SuperClass/SuperClass()/15.下面程序的运行结果是:(C)classSuperClass{publicvoidf(){System.out.print(SuperClass.f()/);}}classSubClassextendsSuperClass{publicvoidf(){System.out.print(SubClass.f()/);}}classThirdClass{publicvoidg(SuperClassarg){System.out.print(g(SuperClass)/);arg.f();}publicvoidg(SubClassarg){System.out.print(g(SubClass)/);arg.f();}publicstaticvoidmain(String[]args){ThirdClasstc=newThirdClass();SuperClasssc=newSubClass();tc.g(sc);}}A.g(SubClass)/SubClass.f()/B.g(SuperClass)/SuperClass.f()/C.g(SuperClass)/SubClass.f()/D.g(SubClass)/SuperClass.f()/16.取出字符串Stringtarget=IbmSunJavaBeaWeblogicOracle...中的子串“Java”的语句是:(B)A.target.substring(5,10);B.target.substring(6,10);C.target.substring(5,9);D.target.substring(6,9);17.下列描述正确的是:(A,B)A.hashCode返回是对象在内存唯一的标识,对象不同,hashCode返回值一定不同。6B.hashCode方法可以重写,但重写的逻辑要和equals保持一致性。C.语句System.out.println(java==java);打印出的结果为“false”。D.HashSet容器在存放某一类的对象时,改变该类的hashCode方法可能会影响到HashSet容器的效率18.属于Collection容器的方法是:(A,C)A.iteratorB.hasNextElementC.toArrayD.next19.下列三条输出语句输出的结果为:(D)System.out.print(Math.floor(156.1)+/);System.out.print(Math.ceil(-166.3)+/);System.out.print(Math.round(-123.5)+/);A.156.0/-167.0/-124/B.157.0/-167.0/-123/C.157.0/-166.0/-124/D.156.0/-166.0/-123/20.下面的程序会有编译错误,更正的方法为:()classOuterClass{publicvoidf(){Strings1=inner;classInnerClass{publicvoidg(){System.out.println(s1);}}}}A.将变量s1声明为staticB.将变量s1声明为publicC.将变量s1声明为finalD.将内部类InnerClass声明为static21.已有接口定义:packagetest;publicinterfaceRole{publicvoidaction()throwsjava.io.IOException;}下面的类定义不会有编译错误的是:A.BA.packagetest;publicclassAimplementsRole{publicvoidaction()throwsjava.io.FileNotFoundException{}}B.packagetest;publicclassBimplementsRole{publicvoidaction()throwsjava.io.IOException{}}C.packagetest;publicclassCimplementsRole{7publicvoidaction(){};}D.packagetest;publicclassDimplementsRole{publicvoidaction()throwsException{}}22.下面的程序输出的结果为:DpublicclassTest{publicstaticvoidmain(String[]args){StringBufferbuffer=newStringBuffer();intvalue=18;do{in