Java基础测试题

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

Ps:答案已写在上面。希望大家把其他错误选项问题找出来.第一组:1.下面哪些是合法的变量名?(DEG)A.2variable//不能以数字开头B..variable2//不能用点和空格C.._whatavariable//不能用点和空格D._3_E.$anothervarF.#myvar//#不能用来命名G.$_¥2.请问“abcd”instanceofObject返回的值是?(B)A.“abcd”B.trueC.falseD.String前面是后面的子类?//java中的instanceof运算符是用来在运行时指出对象是否是特定类的一个实例。instanceof通过返回一个布尔值来指出,这个对象是否是这个特定类或者是它的子类的一个实例。3.下面说法正确的是:(A)A.如果源代码中有package语句,则该语句必须放在代码的第一行(不考虑注释和空格);B.如果源代码中有import语句,则该语句必须放在在代码的第一行(不考虑注释和空格)//先写包,再导入C.如果源代码中有main()方法,则该方法必须被放在代码的第一行//先写包D.如果某文件的源代码中定义了一个public的接口,接口名和文件名可以不同。4.下面有关方法覆盖说法不正确的是:(B)A.方法覆盖要求覆盖和被覆盖的方法有相同的名字,参数列以及返回值B.方法覆盖要求覆盖和被覆盖的方法必须具有相同的访问权限;C.覆盖的方法不能比被覆盖的方法抛出更多的异常D.覆盖的方法一定不能是private的5.一个Java程序运行从上到下的环境次序是(C)A.操作系统、Java程序、JRE/JVM、硬件B.JRE/JVM、Java程序、硬件、操作系统C.Java程序、JRE/JVM、操作系统、硬件D.Java程序、操作系统、JRE/JVM、硬件6.下面选项中哪个关键字可以用来修饰接口中的变量和方法?(A)A.staticB.privateC.synchronizedD.protected7.下面代码段中:(A)StringString=”String”;//String可以做变量名System.out.println(String);A.StringB.不知道C.编译出错D.运行出错8.下面哪种是正确的创建Map集合的方式:(D)A.Mapm=newMap();B.Mapm=newMap(initcapacity,incrementcapacity);C.Mapm=newMap(newCollection());D.Map是接口,所以不能实例化。9.关于被私有保护访问控制符protected修饰的成员变量,以下说法正确的是?(A)A.可以被三种类所引用:该类自身、与它在同一个包中的其他类、在其他包中的该类的子类B.可以被两种类访问和引用:该类本身、该类的所有子类C.只能被该类自身所访问和修改D.只能被同一个包中的类访问10.下列有关继承的说法。正确的是:(B)A.子类能继承父类的所有方法和属性;B.子类能继承父类的非私有方法和属性C.子类只能继承父类public方法和属性D.子类能继承父类的方法,而不是属性。11.对于构造方法,下列叙述正确的是:(AC)A.构造方法的方法名必须与类名相同;B.构造方法必须用void申明返回类型(没有返回类型)C.构造方法可以被程序调用D.若编程人员没再类中定义构造方法,程序将报错。12.为了区分类中重载的同名的不同的方法,要求:(A)A.采用不同的形式参数列表B.返回值得数据类型不同(与返回值无关)C.调用时用类名或者对象名做前缀D.参数名不同(参数列表---参数个数,参数类型)13.下面是有关子类继承父类构造函数的描述,其中正确的是:(C)A.创建子类的对象时,先调用子类自己的构造函数,然后调用父类的构造函数。(先调用父类的构造函数)B.子类可以不调用父类的构造函数(子类的构造函数默能调用父类的无参数的构造函数)C.子类必须通过super()关键字调用父类的构造函数D.子类无法继承父类的构造函数。(同上)14.下列说法中,正确的是:(A)A.类是变量和方法的集合体B.数组是无序数据的集合(类型(type)可以为Java中任意的数据类型,包括简单类型组合类型)C.抽象类可以实例化D.类成员数据必须是公有的第二组:1.下列不可作为java语言标识符的是(D)A)a1B)$1C)_1D)11(不能以数字开头)2.有一段java应用程序,它的主类名是a1,那么保存它的源文件名可以是(A)A)a1.javaB)a1.classC)a1D)都对3.整型数据类型中,需要内存空间最少的是(D)A)short(2个字节)B)long(8个字节)C)int(4个字节)D)byte(1个字节)4.Java类可以作为(C)A)类型定义机制B)数据封装机制C)类型定义机制和数据封装机制D)上述都不对5.在创建对象时必须(C)A)先声明对象,然后才能使用对象B)先声明对象,为对象分配内存空间,然后才能使用对象C)先声明对象,为对象分配内存空间,对对象初始化,然后才能使用对象D)上述说法都对**6.在调用方法时,若要使方法改变实参的值,可以(B)A)用基本数据类型作为参数B)用对象作为参数C)A和B都对D)A和B都不对7.Java中(C)A)一个子类可以有多个父类,一个父类也可以有多个子类(只可以单继承)B)一个子类可以有多个父类,但一个父类只可以有一个子类C)一个子类可以有一个父类,但一个父类可以有多个子类D)上述说法都不对8.Java语言具有许多优点和特点,哪个反映了Java程序并行机制的特点?(B)A)安全性B)多线性C)跨平台D)可移植**9.Character流与Byte流的区别是(C)A)每次读入的字节数不同B)前者带有缓冲,后者没有C)前者是字符读写,后者是字节读写D)二者没有区别,可以互换使用10.以下声明合法的是(D)A、defaultStrings;B、publicfinalstaticvoidintw()C、doubleabstractd;D、abstractfinaldoublehyperbolicCosine()***11.关于以下application的说明,正确的是(C)1.classStaticStuff2.{3.staticintx=10;4.static{x+=5;}5.publicstaticvoidmain(Stringargs[])6.{7.System.out.println(“x=”+x);8.}9.static{x/=3;}10.}A、4行与9行不能通过编译,因为缺少方法名和返回类型B、9行不能通过编译,因为只能有一个静态初始化器C、编译通过,执行结果为:x=5D、编译通过,执行结果为:x=312.关于以下程序代码的说明正确的是(D)1.classHasStatic{2.privatestaticintx=100;3.publicstaticvoidmain(Stringargs[]){4.HasStatichs1=newHasStatic();5.hs1.x++;6.HasStatichs2=newHasStatic();7.hs2.x++;8.hs1=newHasStatic();9.hs1.x++;10.HasStatic.x--;11.System.out.println(“x=”+x);12.}13.}A、5行不能通过编译,因为引用了私有静态变量B、10行不能通过编译,因为x是私有静态变量C、程序通过编译,输出结果为:x=103D、程序通过编译,输出结果为:x=10213.以下选项中循环结构合法的是(C)A、while(inti7){i++;System.out.println(“iis“+i);}B、intj=3;while(j){System.out.println(“jis“+j);}C、intj=0;for(intk=0;j+k!=10;j++,k++){System.out.println(“jis“+j+“kis”+k);}D、intj=0;do{System.out.println(“jis“+j++);if(j==3){continueloop;}}while(j10);14.类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){}15.类Test1、Test2定义如下:1.publicclassTest12.{publicfloataMethod(floata,floatb)throws3.IOException{}4.}5.publicclassTest2extendsTest1{6.7.}将以下哪种方法插入行6是不合法的。(A)A、floataMethod(floata,floatb){}B、publicintaMethod(inta,intb)throwsException{}C、publicfloataMethod(floatp,floatq){}D、publicintaMethod(inta,intb)throwsIOException{}***16.关于以下程序段,正确的说法是(C)1.Strings1=”abc”+”def”;2.Strings2=newString(s1);3.if(s1==s2)4.System.out.println(“==succeeded”);5.if(s1.equals(s2))6.System.out.println(“.equals()succeeded”);A、行4与行6都将执行B、行4执行,行6不执行C、行6执行,行4不执行C、行4、行6都不执行17.Javaapplication中的主类需包含main方法,main方法的返回类型是什么?(D)A、intB、floatC、doubleD、void18.以下哪个方法用于定义线程的执行体?(C)A、start()B、init()C、run()D、synchronized()19.以下标识符中哪项是不合法的(A)A、contstB、$doubleC、helloD、BigMeaninglessName(const和goto是Java的保留的关键字,不可做标识符)20.以下哪个关键字可以用来为对象加互斥锁?(D)A、transientB、staticC、serializeD、synchronized21.在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数个数、类型或顺序各不相同,传回的值也可以不相同。这种面向对象程序的特性称为(C)。A、隐藏B、覆盖C、重载D、Java不支持此特性22.以下关于构造函数的描述错误的是(A)。A、构造函数的返回类型只能是void型。(构造函数没有返回类型)B、构造函数是类的一种特殊函数,它的方法名必须与类名相同。C、构造函数的主要作用是完成对类的对象的初始化工作。D、一般在创建新对象时,系统会自动调用构造函数。23.下列哪些语句关于Java内存回收的说明是正确的?(B)A、程序员必须创建一个线程来释放内存B、内存回收程序负责释放无用内存C、内存回收程序允许程序员直接释放内存(垃圾回收站自动回收,释放)D、内存回收程序可以在指定的时间释放内存对象24.若需要定义一个类域或类方法,应使用哪种修饰符?(C)A、staticB、packageC、privateD、public25.有以下方法的定义,请选择该方法的返回类型(D)。ReturnTypemethod(bytex,doubley){return(short)x/y*2;}A、

1 / 46
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功