一、选择题1.下面哪个JDK包提供的类和接口在使用时不需要用import语句引入?[A]java.util[B]java.io[C]java.applet[D]java.lang[E]javax.swing[F]java.awt[G]java.net[H]java.sql2.下面哪个选项是java的解释器?[A]java.exe[B]javac.exe[C]javah.exe[D]appletviewer.exe3.下面描述中错误的是?[A]public类就是主类[B]对于application而言,主类是包含main方法的类。[C]在一个.java文件中,可以有多个类的定义,但只能有一个public类。[D]对于applet而言,主类是系统Applet类的扩展类。4.下面哪个选项不是java语言合法的标识符?[A]$mail2[B]3$mail[C]Abcde[D]_mail_5.下面哪条语句在编译时不会出现错误或警告?[A]floatf=123.23;[B]inta=123.23f;[C]booleanb=null;[D]Strings=null;6.有如下语句:intx=1;inta=(x3)?5:2;赋值后a的值是?[A]5[B]2[C]true[D]false7.下面代码的运行结果是什么?inti=2;switch(i){case0:System.out.println(zero);break;case1:System.out.println(one);case2:System.out.println(two);default:System.out.println(default);}[A]two[B]two,default[C]zero,one,two,default[D]default8.编译运行下面代码的结果是什么?classQ{publicstaticvoidmain(Stringargs[]){intanar[]={1,2,3};System.out.println(anar[2]);}}[A]1[B]2[C]3[D]09.编译运行下面代码的结果是什么?interfaceA{inta=50;publicvoidamethod();}classBimplementsA{publicstaticvoidmain(Stringargs[]){System.out.println(a);}}[A]运行时输出50[B]运行时输出0[C]编译时提示有错误10.编译运行下面代码的结果是什么?publicclassMyClass{staticinti;publicstaticvoidmain(Stringargs[]){System.out.println(i);}}[A]提示变量i没有被初始化[B]null[C]0[D]111.下面哪个选项的代码在编译时有错误或警告?[A]/*Thisisacomment*/packageMyPackage;importjava.awt.*;classMyClass{}[B]packageMyPackage;importjava.awt.*;classMyClass{}[C]importjava.awt.*;packageMypackage;classMyclass{}12.以下输出语句的输出结果是?inta[][]={{2},{3,3},{4,4,4}};System.out.println(a.length+“”+a[1].length);[A]22[B]32[C]31[D]1213.给出如下代码:classTest{privateintm;publicstaticvoidfun(){//somecode...}}如何使成员变量m被函数fun()直接访问?[A]将privateintm改为protectedintm[B]将privateintm改为publicintm[C]将privateintm改为privatestaticintm[D]将privateintm改为intm14.以下输出语句的输出结果是?Stringstr=china;Stringstr1=america;System.out.println(str.regionMatches(4,str1,6,1));[A]true[B]false[C]1[D]015.编译JavaApplication源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为()A..javaB..classC..htmlD..exe16.设x=1,y=2,z=3,则表达式y+=z--/++x的值是:()A.3B.3.5C.4D.517.设a=8,则表达式a2的值是:()A.1B.2C.3D.418.下面程序段的输出结果是()StringMyStr=“Hello,”;MyStr=MyStr+“Guys!”;System.out.println(MyStr);A.Hello,Guys!B.Hello,C.Guys!D.该程序段有语法错误19.下面语句哪个是正确的?()A.char='abc'B.longl=0xfffC.floatf=0.23D.double=0.7E-320.下面语句段的输出结果是什么?()inti=9;switch(i){default:System.out.println(“default”);case0:System.out.println(“zero”);break;case1:System.out.println(“one”);case2:System.out.println(“two”);}A.defaultB.default,zeroC.errordefaultclausenotdefinedD.nooutputdisplayed21.当编译和运行下列程序段时,会发生什么?()classBase{}classSubextendsBase{}classSub2extendsBase{}publicclassCEx{publicstaticvoidmain(Stringargv[]){Baseb=newBase();Subs=(Sub)b;}}A.通过编译和并正常运行。B.编译时出现例外。C.编译通过,运行时出现例外。22.如果类能被所属包中的类访问,也可以被其它包中的类访问,那么应使用哪个限定词?()A.publicB.privateC.protectedD.transient23.下面的哪个选项是正确的?()classExSuper{Stringname;Stringnick_name;publicExSuper(Strings,Stringt){name=s;nick_name=t;}publicStringtoString(){returnname;}}publicclassExampleextendsExSuper{publicExample(Strings,Stringt){super(s,t);}publicStringtoString(){returnname+“a.k.a”+nick_name;}publicstaticvoidmain(Stringargs[]){ExSupera=newExSuper(“First”,“1st”);ExSuperb=newExample(“Second”,“2nd”);System.out.println(“ais”+a.toString());System.out.println(“bis”+b.toString());}}A.编译时会出现例外。B.运行结果为:aisFirstbisSecondC.运行结果为:aisFirstbisSeconda.k.a2ndD.运行结果为:aisFirsta.k.a1stbisSeconda.k.a2nd24.请问所有的异常类皆继承哪一个类?()A.java.io.ExceptionB.java.lang.ThrowableC.java.lang.ExceptionD.java.lang.Error25.以下说法中,错误的是()A.java语言源程序中可以有多个类的定义,但只能有一个主类,此主类是java程序运行的入口点B.在应用程序中,主类为包含main方法的类C.在applet中,主类为用户自定义的系统applet类的扩展类D.主类就是public类E.java语言源程序中可以有多个类的定义,但只能有一个public类,且类名要和java语言源程序文件名保持一致。26.下面说法中,错误的是()A.行注释以//开头B.块注释以/*开始和*/结束C.java编译器忽略注释后的语句或说明D.javadoc注释不是java语言中的注释类型27.下面java语言的标识符中,不合法的是()A.classnameB.$memberC.56areD._variable28.指定变量是一个类成员变量的访问修饰符是()A.accessSpicifierB.staticC.finalD.protected29.下面关于构造方法的描述,错误的是()A.能为构造方法指定返回值B.当写类时不提供它的构造方法,运行系统会自动提供缺省的构造方法,此方法没有任何参数,方法体为空。C.构造方法与类具有相同的名字D.Java语言支持方法名重载,所以类可以有多个构造方法,他们共享同一个名字,靠参数的的类型和数目来区分E.构造方法用于在创建对象时对对象进行初始化。30.关于包的描述中,不正确的是()A.java语言中包用来组织相关的类和接口,包在物理上是一个文件夹,逻辑上代表一个分类概念B.一个程序文件中只能有一个package语句,package语句要放在import语句的后面C.包内的类名唯一,但不同的包中可以有相同的类名D.引用包中的类和接口时,使用import语句31.关于接口,下面描述不正确的是()A.java语言中禁止多继承属性,引入接口的目的是为了用简单有效的方法实现类似于多继承的特性B接口中可以定义大量的常量和方法,但其中的方法只是一种声明,没有具体的实现,使用接口的类自己实现这些方法C.接口可以使用extends关键字继承上级接口声明的方法和常量,继承是单继承D.如果接口中定义了父接口中的同名方法和常量,则父接口中的同名方法被覆盖,同名常量被隐藏。E.接口中的常量默认具有public、final、static属性;接口中的方法默认具有public、abstract属性F.如果一个类声明实现一个接口,但没有实现接口中的所有方法,那么这个类必须是abstract类。32.接口A的定义如下,指出下列哪个类实现了该接口?()interfaceA{intmethod1(inti);intmethod2(intj);}A.classBimplementsA{intmethod1(){}intmethod2(){}}B.classB{intmethod1(inti){}intmethod2(intj){}}C.classBimplementsA{intmethod1(inti){}intmethod2(intj){}}D.classBextendsA{intmethod1(inti){}intmethod2(intj){}}33.下面程序段的执行结果是什么?()publicclassFoo{publicstaticvoidmain(String[]args){try{return;}finally{System.out.println(Finally);}}}A.程序正常运行,但不输出任何结果。B.程序正常运行,并输出“Finally”。C.编译能通过,但运行时会出现一个例外。D.因为没有catch语句块,所以不能通过编译。34.指出正确的表达式A.byteb=128B.booleanisFull=nullC.longl=0xfffLD.double=0.9239d35.运行下列程序,会产生什么结果()publicclassXexten