《JAVA语言程序设计》期末考试试题及答案1一、单选择题1、编译JavaApplication源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为(B)。A.javaB..classC.htmlD..exe2、设x=1,y=2,z=3,则表达式y+=z--/++x的值是(A)。A.3B.3.5C.4D.53、不允许作为类及类成员的访问控制符的是(C)。A.publicB.privateC.staticD.protected4、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为(A)。A.staticvoidmethod()B.publicvoidmethod()C.finalvoidmethod()D.abstractvoidmethod()二、填空题1、开发与运行Java程序需要经过的三个主要步骤为编辑源程序、编译生成字节码和解释运行字节码。2、在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码占用2字节内存空间,这样,无论是中文字符还是英文字符,都是占用2字节内存空间。3、设x=2,则表达式(x++)/3的值是0。4、若x=5,y=10,则xy和x=y的逻辑值分别为true和false。5、抽象(abstract)方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法必须在抽象类之中定义。最终(final)方法是不能被当前类的子类重新定义的方法。6、创建一个名为MyPackage的包的语句是packageMyPackage;,该语句应该放在程序的位置为:应该在程序第一句。7、设有数组定义:intMyIntArray[]={10,20,30,40,50,60,70};则执行以下几个语句后的输出结果是120。ints=0;for(inti=0;iMyIntArray.length;i++)if(i%2==1)s+=MyIntArray[i];System.out.println(s);8、在Java程序中,通过类的定义只能实现单重继承,但通过接口的定义可以实现多重继承关系。三、写出下面程序的运行结果1、importjava.io.*;publicclassabc{publicstaticvoidmain(Stringargs[]){ABs=newAB(Hello!,IloveJAVA.);System.out.println(s.toString());}}classAB{Strings1;Strings2;publicAB(Stringstr1,Stringstr2){s1=str1;s2=str2;}publicStringtoString(){returns1+s2;}}运行结果:Hello!IloveJAVA.2、importjava.io.*;publicclassabc{publicstaticvoidmain(Stringargs[]){inti,s=0;inta[]={10,20,30,40,50,60,70,80,90};for(i=0;ia.length;i++)if(a[i]%3==0)s+=a[i];System.out.println(s=+s);}}运行结果:s=1803、importjava.io.*;publicclassabc{publicstaticvoidmain(Stringargs[]){System.out.println(a=+a+\nb=+b);}}classSubClassextendsSuperClass{intc;SubClass(intaa,intbb,intcc){super(aa,bb);c=cc;}}classSubSubClassextendsSubClass{inta;SubSubClass(intaa,intbb,intcc){super(aa,bb,cc);A=aa+bb+cc;}voidshow(){System.out.println(a=+a+\nb=+b+\nc=+c);}}运行结果:a=60b=20c=30《JAVA语言程序设计》期末考试试题及答案4一、单选题1、下列程序段执行后的结果是(A)。Strings=newString(abcdefg);for(inti=0;is.length();i+=2){System.out.print(s.charAt(i));}A)acegB)ACEGC)abcdefgD)abcd2、有整型数组:int[]x={12,35,8,7,2};,则调用方法Arrays.sort(x)后,数组x中的元素值依次是(A).A)2781235B)1235872C)3512872D)87123523、下面的程序段创建了BufferedReader类的对象in,以便读取本机c盘my文件夹下的文件1.txt。File构造函数中正确的路径和文件名的表示是(C)。Filef=newFile(填代码处);file=newFileReader(f);in=newBufferedReader(file);A)./1.txtB)../my/1.txtC)c:\\my\\1.txtD)c:\my\1.txt4、应用程序的main方法中有以下语句,则输出的结果是(A)。Strings1=newString(abc);Strings2=newString(abc);booleanb1=s1.equals(s2);booleanb2=(s1==s2);System.out.print(b1++b2);A)truefalseB)falsetrueC)truetrueD)falsefalse5、应用程序的main方法中有以下语句,则输出的结果是(B)。Hashtablehashtable=newHashtable();hashtable.put(x,12345);hashtable.put(y,67890);hashtable.put(a,abcde);System.out.println(hashtable.get(a));A)aB)abcdeC)12345D)678906、下面语句的功能是(A)。RandomAccessFileraf2=newRandomAccessFile(1.txt,rw);A)打开当前目录下的文件1.txt,既可以向文件写数据,也可以从文件读数据。B)打开当前目录下的文件1.txt,但只能向文件写入数据,不能从文件读取数据。C)打开当前目录下的文件1.txt,但不能向文件写入数据,只能从文件读取数据。D)以上说法都不对。7、应用程序的main方法中有以下语句,则输出的结果是(B)。Strings=12345#aaa#bbb#67890;intn=s.indexOf(#);intk=s.indexOf(#,n+1);intm=s.indexOf(#,k+1);Strings2=s.substring(m+1);System.out.println(s2);A)123456B)67890C)aaaD)bbb8、下面程序段执行后b的值是(B)。Integerinteg=newInteger(9);booleanb=integinstanceofObject;A)9B)trueC)1D)false9、应用程序Test.java的源程序如下,在命令行键入:javaTestaaabbc回车后输出的结果是(A)。publicclassTest{publicstaticvoidmain(Stringargs[]){intk1=args.length;intk2=args[1].length();System.out.print(k1++k2);}}A)32B)12C)13D)3310、应用程序的main方法中有以下语句,则输出的结果是(A)。intb[][]={{1},{2,2},{2,2,2}};intsum=0;for(inti=0;ib.length;i++){for(intj=0;jb[i].length;j++){sum*=b[i][j];}}System.out.println(sum=+sum);A)32B)11C)2D)311、应用程序的main方法中有以下语句,则执行后输出的结果是(D)。int[]x={125,21,5,168,98};intmax=x[0];for(inti=1;ix.length;i++){if(x[i]max)max=x[i];}System.out.println(max);A)125B)5C)98D)16812、程序Test.java编译运行后输出的结果是(A)。publicclassTest{Strings1=java;publicstaticvoidmain(Stringargs[]){intz=2;Testt=newTest();System.out.println(t.s1+z);}}A)java2B)2C)没有输出结果D)java13、应用程序的main方法中有以下语句,则输出的结果是(A)。Strings1=0.5,s2=12;doublex=Double.parseDouble(s1);inty=Integer.parseInt(s2);System.out.println(x+y);A)12.5B)120.5C)12D)“12.5”14、下面的程序创建了一个文件输出流对象,用来向文件test.txt中输出数据,假设程序当前目录下不存在文件test.txt,编译下面的程序Test.java后,将该程序运行3次,则文件test.txt的内容是(D)。importjava.io.*;publicclassTest{publicstaticvoidmain(Stringargs[]){try{Strings=ABCDE;byteb[]=s.getBytes();FileOutputStreamfile=newFileOutputStream(test.txt,true);file.write(b);file.close();}catch(IOExceptione){System.out.println(e.toString());}}}A)ABCABCB)ABCDEC)TestD)ABCDEABCDEABCDE15、下面那些方法不是接口Collection中已声明的方法(C)A)添加元素的add(Objectobj)方法B)删除元素的remove(Objectobj)方法C)得到元素个数的length()方法D)返回迭代器的iterator()方法,迭代器用于元素遍历二、多选题1、下面main()方法的定义哪些是正确的(ACD)?A)publicstaticvoidmain(Stringargs[]){}B)publicstaticvoidmain(String[]){}C)publicstaticvoidmain(String[]args){}D)publicstaticvoidmain(String[]x){}2、线程对象的生命周期中,通常经历下面哪些状态(ABCD)。A)新建B)运行C)就绪D)死亡3、下面说法正确的是(ABCD)。A)final可修饰类、属性(变量)、方法。B)abstract可修饰类、方法。C)抽象方法只有方法头,没有方法体。D)关键字final和abstract不能同时使用。4、下面关于java中输入/输出流的说法正确的是(ABCD)。A)FileInputStream与FileOutputStream类用读、写字节流。B)Reader与Writer类用来读、写字符流。C)RandomAccessFile既可以用来读文件,也可以用来写文件。D)File类用来处理与文件相关的操作。5、下面说法正确的是(ABCD)。A)如果某公共接口被声明在一个源文件中,则接口必须与源文件具有相同名字。B)如果源文件包含import语