一、单选题1.下列不可作为java语言修饰符的是(D)A)a1B)$1C)_1D)112.有一段java应用程序,它的主类名是a1,那么保存它的源文件名可以是(A)A)a1.javaB)a1.classC)a1D)都对3.整型数据类型中,需要内存空间最少的是(D)A)shortB)longC)intD)byte4.Java中(C)A)一个子类可以有多个父类,一个父类也可以有多个子类B)一个子类可以有多个父类,但一个父类只可以有一个子类C)一个子类可以有一个父类,但一个父类可以有多个子类D)上述说法都不对5.下列哪些语句关于Java内存回收的说明是正确的。(B)A.程序员必须创建一个线程来释放内存B.内存回收程序负责释放无用内存C.内存回收程序允许程序员直接释放内存D.内存回收程序可以在指定的时间释放内存对象6.下面的哪个赋值语句是不对的?(A)A.floatf=11.1;B.doubled=5.3E12;C.doubled=3.14159;D.doubled=3.14D;7.以下由do-while语句构成的循环执行的次数是(B)。intk=0;do{++k;}while(k1);A.一次也不执行B.执行1次C.无限次D.有语法错,不能执行8.若有定义Stingjerry=IloveTom,s1;则s1=jerry.substring(2)的值为(C)A.lB.loveC.loveTomD.Tom9.类的设计要求它的某个成员变量不能被外部类直接访问,应该使用下面的哪些修饰符获得需要的访问控制(D)ApublicBdefaultCprotectedDprivate10.在异常处理中,如释放资源、关闭文件、关闭数据库等由(C)来完成。A.try子句B.catch子句C.finally子句D.throw子句11.在Java中,用Package语句说明一个包时,该包的层次结构必须是(B)A.与文件的结构相同B.与文件目录的层次相同C.与文件类型相同D.与文件大小相同12.Java的int型变量占内存的字节是(C)A1B2C4D与机器有关13.为了区分类中重载的同名的不同方法,要求(A).A.采用不同的形式参数列表B.返回值类型不同C.调用时用类名或对象名做前缀D.参数名不同14.下面关于数组的说法,错误的是(B)。A.数组是最简单的复合数据类型,是一系列数据的集合B.声明数组时,必须分配内存C.数组的元素可以是值(基本数据类型)、对象或其他数组D.一个数组中的所有值都必须是相同的类型15.下列语句片段inta=10,b=4,c=20,d=6;System.out.println(a++*b+c*--d);的结果为(C)A.144B.28C.140D.不能执行16.在Java中,所有类的根类是(A)A.java.lang.ObjectB.java.lang.ClassC.java.applet.AppletD.java.awt.Frame17.int型public成员变量MAX_LENGTH,该值保持为常数100,则定义这个变量的语句是(D)A.publicintMAX_LENGTH=100B.finalintMAX_LENGTH=100C.publicconstintMAX_LENGTH=100D.publicfinalintMAX_LENGTH=10018.下列关于构造方法的特点描述中错误的是(A)A.不可重载B.方法名同类名C.无返回类型D.系统自动调用19.下面的是关于类及其修饰符的一些描述,不正确的是:(B)。A.abstract类只能用来派生子类,不能用来创建abstract类的对象。B.final类不但可以用来派生子类,也可以用来创建final类的对象。C.abstract不能与final同时修饰一个类。D.abstract方法必须在abstract类中声明,但abstract类定义中可以没有abstract方法。20.下列构造方法的调用方式中,正确的是(C)A.按照一般方法调用B.由用户直接调用C.只能通过new自动调用D.被系统调用21.复合语句用(B)括起来的一段代码。A.小括号()B.大括号{}C.中括号〔〕D.单引号‘’22.下列关于构造方法的叙述中,错误的是(C)A.Java语言规定构造方法名与类名必须相同B.Java语言规定构造方法没有返回值,但不用void声明C.Java语言规定构造方法不可以重载D.Java语言规定构造方法只能通过new自动调用23.若a是int型变量,计算表达式a=25/3%3后,a为(B)A.1B.2C.3D.424.Java变量中,以下不属于引用类型的数据类型是(B)A.类B.字符型C.数组型D.接口25.编译一个定义了两个类和三个方法的Java源程序文件,总共会产生(D)个字节码文件。A.5个字节码文件,以“.java”为扩展名B.2个字节码文件,以“.java”为扩展名C.5个字节码文件,以“.class”为扩展名D.2个字节码文件,以“.class”为扩展名26.关于实例方法和类方法,以下描述正确的是:(D)A.实例方法只能访问实例变量B.类方法既可以访问类变量,也可以访问实例变量C.类方法只能通过类名来调用D.实例方法只能通过对象来调用27.在编写异常处理的Java程序中,每个catch语句块都应该与(C)语句块对应,使得用该语句块来启动Java的异常处理机制。A.if–elseB.switchC.tryD.throw28.类Test1定义如下:1.publicclassTest1{2.publicfloataMethod(floata,floatb){}3.4.}将以下哪种方法插入行3是不合法的。(B)A.publicfloataMethod(floata,floatb,floatc){}B.publicfloataMethod(floatc,floatd){}C.publicintaMethod(inta,intb){}D.privatefloataMethod(inta,intb,intc){}29.关于接口的定义和实现,以下描述正确的是:(A)A.接口定义中的方法都只有定义没有实现B.接口定义中的变量都必须写明final和staticC.如果一个接口由多个类来实现,则这些类在实现该接口中的方法时应采用统一的代码D.如果一个类实现一个接口,则必须实现该接口中的所有方法,但方法未必声明为public.30.下列有关事件监视器的说法正确的是(B)A.一个组件上不可以注册多个事件监视器B.一个事件监视器可以被注册到多个组件上C.一个组件上注册多个事件监视器会发生冲突,不会起作用。D.一个组件上注册多个事件监视器,只有最后一个事件监视器会起作用31.在java中,字符串由java.lang.String和(B)定义A.java.lang.StringCharB.java.lang.StringBufferC.java.io.StringCharD.java.io.StringBuffer32.对于catch子句的排列,下列哪种是正确的(B)A.父类在先,子类在后B.子类在先,父类在后C.有继承关系的异常不能在同一个try程序段内D.先有子类,其他如何排列都无关33.下列关于抽象类的说法四个是正确的?(C)A.某个抽象类的父类是抽象类,则这个子类必须重载父类的所有抽象方法;B.接口和抽象类是同一回事;C.绝对不能用抽象类去创建对象;D.抽象类中不可以有非抽象方法。34.下列描述正确的是(C)A.多态性就是指子类的某个方法被其父类重写时,可以各自产生自己的功能行为。B.多态性就是指子类的某个方法被其父类重写时,不能各自产生自己的功能行为。C.多态性就是指父类的某个方法被其子类重写时,可以各自产生自己的功能行为。D.以上都不对35.下列说法正确的是(D)A.try-catch-finally代码块中的finally子句只有在try子句和catch子句都执行执行之后才执行B.如果try代码块中出现了异常并被catch子句捕捉到,那么finally子句就不再执行了C.只有try代码块中没有出现异常时,finally子句才会执行D.不管try代码块中是否出现异常,或者catch子句是否捕捉到异常,finally子句都将被执行36.下面(D)赋值语句不会出现编译警告或错误。A.floatf=1.3;B.charc=a;C.byteb=257;D.inti=10;37.将类的成员的访问权限设置为默认的,则该成员能被(A)A同一包中的类访问B其他包中的类访问C所有的类访问D所有的类的子类访问38.下列关于Java语言的特点,描述错误的是(C)A.Java是跨平台的编程语言B.Java支持分布式计算C.Java是面向过程的编程语言D.Java支持多线程39.System.out.println(5+2);的输出结果应该是(A)。A.52B.7C.2D.540.在Java中,开发图形用户界面的程序需要使用一个系统提供的类库,这个类库就是(B)包。A.java.ioB.java.awtC.java.appletD.java.awt.event41.假设已经有一个类已经实现了ActionListener接口,下面哪个方法可以把这个类注册到按钮控件上?(B)。A.addListener()B.addActionListener()C.addButtonListener()D.setListener()42.Java语言使用的字符集是(C)A.ASCIIB.EBCDIC.UnicodeD.BCD43.JAVA中,为了辩别用户是否关闭窗口,要实现监听器接口(C)。A.MouseListenerB.ActionListenerC.WindowListenerD.以上都要44.菜单的事件源是用鼠标点击某个菜单项,ActionListener,要实现的接口方法是actionPerformed(ActionEvente),获得事件源的方法是getSource(),处理该事件的接口是(A)A.ActionListenerB.actionPerformedC.getSourceD.ItemListener45.关键字supper的作用是(D)A用来访问父类被隐藏的成员变量B用来调用父类中被重载的方法C用来调用父类的构造函数D以上都是46.下列定义形式错误的是(B)Afloata[];Bfloata[5];Cinta[]=newint[5];Dfloat[]c;47.一个事件源必须注册监听器才能接收一个事件通知,以将产生的事件对象传输给(D)来处理。A.事件代理(监听器)B.事件源C.主程序D.事件处理方法48.Java中main()函数的返回值是什么?(D)A、StringB、intC、charD、void49.如下哪个字串在Java中可作为自定义标识符?(A)A.$numberB.superC.3numberD.#number50.如下哪个不是Java中有效的关键字?(B)A.constB.NULLC.falseD.this51.如下哪个不是Java中正确的整数表示?(D)A.22B.0x22C.022D.22H二、填空题1.若x=5,y=10,则xy和x=y的逻辑值分别为1和0。Java的图形界面技术经历了两个发展阶段,分别通过提供AWT开发包和swing开发包来实现。2.如果在子类中想使用被子类隐藏了的父类成员变量或方法就可以使用关键字super。3.使用关键字boolean来定义逻辑变量。4.在Java中,所有类的根类是java.lang.Object。5.如果一个Java程序文件中定义有3个类,编译该源程序文件将产生3个文件名与类名相同而扩展名为.class的字节码文件。6.Java提供了java.io包,其中包括一系列的类来实现输入/输出处理。7.在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码占用2字节内存空间。8.在java语言中,所有的数组都有