Java题库.docx
《Java题库.docx》由会员分享,可在线阅读,更多相关《Java题库.docx(14页珍藏版)》请在冰豆网上搜索。
![Java题库.docx](https://file1.bdocx.com/fileroot1/2022-11/23/7d445342-daa5-488a-9095-5871a493bed7/7d445342-daa5-488a-9095-5871a493bed71.gif)
Java题库
Java笔试题:
Java基础概念(附答案)
一、Java笔试题·单项选择题
1.Java是从()语言改进重新设计。
A.AdaB.C++C.PasacalD.BASIC
答案:
B
2.下列语句哪一个正确()
A.Java程序经编译后会产生machinecode
B.Java程序经编译后会产生bytecode
C.Java程序经编译后会产生DLL
D.以上都不正确
答案:
B
3.下列说法正确的有()
A.class中的constructor不可省略
B.constructor必须与class同名,但方法不能与class同名
C.constructor在一个对象被new时执行
D.一个class只能定义一个constructor
答案:
C
4.提供Java存取数据库能力的包是()
A.java.sqlB.java.awtC.java.langD.java.swing
答案:
A
5.下列运算符合法的是()
A.&&B.<>C.ifD.:
=
答案:
A
6.执行如下程序代码
a=0;c=0;
do{
--c;
a=a-1;
}while(a>0);
后,C的值是()
A.0B.1C.-1D.死循环
答案:
C
7.下列哪一种叙述是正确的()
A.abstract修饰符可修饰字段、方法和类
B.抽象方法的body部分必须用一对大括号{}包住
C.声明抽象方法,大括号可有可无
D.声明抽象方法不可写出大括号
答案:
D
8.下列语句正确的是()
A.形式参数可被视为localvariable
B.形式参数可被字段修饰符修饰
C.形式参数为方法被调用时,真正被传递的参数
D.形式参数不可以是对象
答案:
A
9.下列哪种说法是正确的()
A.实例方法可直接调用超类的实例方法
B.实例方法可直接调用超类的类方法
C.实例方法可直接调用其他类的实例方法
D.实例方法可直接调用本类的类方法
答案:
D
二、Java笔试题·多项选择题
1.Java程序的种类有()
A.类(Class)B.AppletC.ApplicationD.Servlet
2.下列说法正确的有()
A.环境变量可在编译sourcecode时指定
B.在编译程序时,所能指定的环境变量不包括classpath
C.javac一次可同时编译数个Java源文件
D.javac.exe能指定编译结果要置于哪个目录(directory)
答案:
BCD
3.下列标识符不合法的有()
A.newB.$UsdollarsC.1234D.car.taxi
答案:
ACD
4.下列说法错误的有()
A.数组是一种对象
B.数组属于一种原生类
C.intnumber=[]={31,23,33,43,35,63}
D.数组的大小可以任意改变
答案:
BCD
5.不能用来修饰interface的有()
A.privateB.publicC.protectedD.static
答案:
ACD
6.下列正确的有()
A.callbyvalue不会改变实际参数的数值
B.callbyreference能改变实际参数的参考地址
C.callbyreference不能改变实际参数的参考地址
D.callbyreference能改变实际参数的内容
答案:
ACD
7.下列说法错误的有()
A.在类方法中可用this来调用本类的类方法
B.在类方法中调用本类的类方法时可直接调用
C.在类方法中只能调用本类中的类方法
D.在类方法中绝对不能调用实例方法
答案:
ACD
8.下列说法错误的有()
A.Java面向对象语言容许单独的过程与函数存在
B.Java面向对象语言容许单独的方法存在
C.Java语言中的方法属于类中的成员(member)
D.Java语言中的方法必定隶属于某一类(对象),调用方法与过程或函数相同
答案:
ABC
9.下列说法错误的有()
A.能被java.exe成功运行的javaclass文件必须有main()方法
B.J2SDK就是JavaAPI
C.Appletviewer.exe可利用jar选项运行.jar文件
D.能被Appletviewer成功运行的javaclass文件必须有main()方法
答案:
BCD
三、Java笔试题·判断题
1.Java程序中的起始类名称必须与存放该类的文件名相同。
()
答案:
正确
2.Unicode是用16位来表示一个字的。
()
答案:
正确
3.原生类中的数据类型均可任意转换。
()
答案:
错误
全国计算机等级考试二级笔试样卷Java语言程序设计
一、选择题(
(1)~(35)每小题2分,共70分)
下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。
(1)下列选项中不符合良好程序设计风格的是
A)源程序要文档化B)数据说明的次序要规范化
C)避免滥用goto语句D)模块设计要保证高耦合、高内聚
(2)从工程管理角度,软件设计一般分为两步完成,它们是
A)概要设计与详细设计B)数据设计与接口设计
C)软件结构设计与数据设计D)过程设计与数据设计
(3)下列选项中不属于软件生命周期开发阶段任务的是
A)软件测试B)概要设计C)软件维护D)详细设计
(4)在数据库系统中,用户所见的数据模式为
A)概念模式B)外模式C)内模式D)物理模式
(5)数据库设计的四个阶段是:
需求分析、概念设计、逻辑设计和
A)编码设计B)测试阶段C)运行阶段D)物理设计
(6)设有如下三个关系表
R
S
T
A
B
C
A
B
C
m
1
3
m
1
3
n
n
1
3
下列操作中正确的是
A)T=R∩SB)T=R∪S
C)T=R×SD)T=R/S
(7)下列叙述中正确的是
A)一个算法的空间复杂度大,则其时间复杂度也必定大
B)一个算法的空间复杂度大,则其时间复杂度必定小
C)一个算法的时间复杂度大,则其空间复杂度必定小
D)上述三种说法都不对
(8)在长度为64的有序线性表中进行顺序查找,最坏情况下需要比较的次数为
A)63B)64C)6D)7
(9)数据库技术的根本目标是要解决数据的
A)存储问题B)共享问题C)安全问题D)保护问题
(10)对下列二叉树
进行中序遍历的结果是
A)ACBDFEGB)ACBDFGEC)ABDCGEFD)FCADBEG
(11)运行Java程序需要的工具软件所在的目录是
A)JDK的bin目录B)JDK的demo目录
C)JDK的lib目录D)JDK的jre目录
(12)下列关于Java语言特点的叙述中,错误的是
A)Java是面向过程的编程语言
B)Java支持分布式计算
C)Java是跨平台的编程语言
D)Java支持多线程
(13)Java的核心包中,提供编程应用的基本类的包是
A)java.langB)java.utilC)java.appletD)java.rmi
(14)下列关于Java对import语句规定的叙述中,错误的是
A)在Java程序中import语句可以有多个
B)在Java程序中import语句可以没有
C)在Java程序中import语句必须有一个
D)在Java程序中import语句必须引入在所有类定义之前
(15)在编译Java程序时,用于指定生成.class文件位置的选项是
A)-gB)-dC)-verboseD)-nowarn
(16)阅读下面程序
importjava.io.*;
publicclassTypeTransition{
publicstaticvoidmain(Stringargs[]){
chara='h';
inti=100;
intj=97;
intaa=a+i;
System.out.println("aa="+aa);
charbb=(char)j;
System.out.println("bb="+bb);
}
}
如果输出结果的第二行为bb=a,那么第一行的输出是
A)aa=IB)aa=204C)aa=vD)aa=156
(17)阅读下面程序
publicclassOperatorsAndExpressions{
voidequalsMethod1(){
Strings1=newString("howareyou");
Strings2=newString("howareyou");
System.out.println(s1==s2);
}
publicstaticvoidmain(Stringargs[]){
OperatorsAndExpressionsOperAndExp=newOperatorsAndExpressions();
//用于复合类型数据的“==”运算符
OperAndExp.equalsMethod1();
}
}
程序运行结果是
A)==B)trueC)falseD)equal
(18)阅读下面代码
if(x==0){System.out.println("冠军");}
elseif(x>-3){System.out.println("亚军");}
else{System.out.println("季军");}
若要求打印字符串“季军”,则变量x的取值范围是
A)x=0&x<=-3B)x>0C)x>-3D)x<=-3
(19)下列关于构造方法的叙述中,错误的是
A)Java语言规定构造方法名与类名必须相同
B)Java语言规定构造方法没有返回值,但不用void声明
C)Java语言规定构造方法不可以重载
D)Java语言规定构造方法只能通过new自动调用
(20)阅读下面程序
importjavax.swing.JOptionPane;
publicclassComparison{
publicstaticvoidmain(Stringargs[]){
StringfirstNumber,//用户输入第1个数据变量
secondNumber,//用户输入第2个数据变量
result;//输出结果变量
intnumber1,//用于比较的第1个数
number2;//用于比较的第2个数
//用户输入第1个数据的字符串
firstNumber=JOptionPane.showInputDialog("输入第1个整数:
");
//用户输入第2个数据的字符串
secondNumber=JOptionPane.showInputDialog("输入第2个整数:
");
//将字符串转换为整数类型
number1=Integer.parseInt(firstNumber);
number2=Integer.parseInt(secondNumber);
//初始化结果变量
______________________;
//比较两个数据
if(number1==number2)
result+=number1+"=="+number2;
if(number1!
=number2)
result+=number1+"!
="+number2;
if(number1result=result+"\n"+number1+"<"+number2;
if(number1>number2)
result=result+"\n"+number1+">"+number2;
if(number1<=number2)
result=result+"\n"+number1+"<="+number2;
if(number1>=number2)
result=result+"\n"+number1+">="+number2;
//显示结果
JOptionPane.showMessageDialog(null,result,"比较结果",
JOptionPane.INFORMATION_MESSAGE);
System.exit(0);
}
}
为使程序能正确运行并得到合理的输出结果,初始化结果变量语句(下划线处)应是
A)result=""B)result=null
C)result=number1D)result=number2
(21)阅读下面程序
publicclassIncrement{
publicstaticvoidmain(Stringargs[]){
intc;
c=5;
System.out.println(c);
System.out.println(c++);
System.out.println(c);
}
}
程序运行结果是
A)5B)5C)6D)6
6576
6676
(22)下列叙述中,错误的是
A)JavaApplication与Applet所用编译命令相同
B)通常情况下JavaApplication只能有一个main()方法
C)JavaApplet必须有HTML文件才能运行
D)JavaApplet程序的.class文件可用java命令运行
(23)下列关于Java语言中线程的叙述中,正确的是
A)线程是由代码、数据、内核状态和一组寄存器组成
B)线程间的数据是不共享的
C)用户只能通过创建Thread类的实例或定义、创建Thread子类的实例建立和控制自己的线程
D)因多线程并发执行而引起的执行顺序的不确定性可能造成执行结果的不确定
(24)阅读下面程序
importjavax.swing.JOptionPane;
publicclassBreakLabelTest{
publicstaticvoidmain(Stringargs[]){
Stringoutput="";
stop:
{
for(introw=1;row<=10;row++){
for(intcolumn=1;column<=5;column++){
if(row==5)
breakstop;
output+="*";
}
output+="\n";
}
output+="\nLoopsterminatednormally";
}
JOptionPane.showMessageDialog(
null,output,"用一个标志测试break语句",
JOptionPane.INFORMATION_MESSAGE);
System.exit(0);
}
}
程序运行结果是
A)窗口中有5行*****
B)窗口中有5行****
C)窗口中有4行*****
D)窗口中有6行*****
(25)处理对象传输的接口是
A)SerializableB)CloneableC)ItemListenerD)ActionListener
(26)在读取二进制数据文件的记录时,为了提高效率常常使用一种辅助类
A)InputStreamB)FileInputStreamC)StringBufferD)BufferedReader
(27)可以使当前同级线程重新获得运行机会的方法是
A)sleep()B)join()C)yield()D)interrupt()
(28)阅读下面程序
1publicclassTryextendsThread{
2publicstaticvoidmain(Stringargs[]){
3Tryt=newTry();
4t.start();
5}
6
7publicvoidrun(intj){
8inti=0;
9while(i<5){
10System.out.println("祝你成功!
");
11i++;
12}
13}
14}
该程序要求打印5行“祝你成功!
”,必须改正程序中的某行代码,程序才能完成。
选择正确的修改是
A)将第1行的extendsThread改为implementsRunnable
B)将第3行的newTry()改为newThread()
C)将第4行t.start()改为start(t)
D)将第7行的publicvoidrun(intj)改为publicvoidrun()
(29)下列事件监听器中,无法对TextField对象进行事件监听和处理的是
A)ActionListenerB)FocusListener
C)MouseMotionListenerD)ChangeListener
(30)Swing的选项面板是
A)JTabbedPaneB)JLayeredPaneC)JScrollPaneD)JSplitPane
(31)每个Java小应用程序必须定义为
A)Applet类或JApplet类的子类B)JFrame类的子类
C)Frame的子类D)Window的子类
(32)在Applet的init()方法被调用后,接下来最先被调用的方法是
A)run()B)start()C)stop()D)destroy()
(33)下列关于Applet的安全限制的叙述中,错误的是
A)通常情况下,禁止Applet读、写本地文件系统
B)通常情况下,禁止Applet向Applet源主机之外的任何主机建立网络连接
C)通常情况下,禁止Applet读取系统信息
D)通常情况下,禁止Applet加载本地库或方法
(34)下列标识符(名字)命名原则中,正确的是
A)类名的首字母小写B)变量和方法名的首字母大写
C)接口名的首字母小写D)常量完全大写
(35)提供showDocument()方法,使Applet能够请求浏览器访问特定URL的类是
A)AppletB)AppletContextC)JAppletD)URL
二、填空题(每空2分,共30分)
请将每一个空的正确答案写在答题卡【1】~【15】序号的横线上,答在试卷上不得分。
注意:
以命令关键字填空的必须拼写完整。
(1)下列软件系统结构图
的宽度为【1】。
(2)【2】的任务是诊断和改正程序中的错误。
(3)一个关系表的行称为【3】。
(4)按“先进后出”原则组织数据的数据结构是【4】。
(5)数据结构分为线性结构和非线性结构,带链的队列属于【5】。
(6)若想在程序中使用JLabel类,则该程序可以使用import【6】.JLabel;语句引入JLabel类。
(7)在Java中,3.14156D表示的是【7】数。
(8)阅读下列代码
publicclassTest2{
publicstaticvoidmain(Stringargs[]){
System.out.println(5/2);}}
其执行结果是【8】。
(9)阅读下列代码段
intx=3;
while(x<9)
x+=2;
x++;
while语句成功执行的次数是【9】。
(10)Java不直接支持多继承,但可以通过【10】实现多继承。
(11)在下列程序的下划线处,填入适当语句使程序能正确执行并输出异常栈信息。
publicclassThrowableException{
publicstaticvoidmain(Stringargs[]){
try{
thrownewThrowable("这里是本人定义的异常");
}catch(Throwablee){
System.out.println("CaughtThrowable");
System.out.println("e.getMessage():
"+e.getMessage());
System.out.println("e.toString():
"+e.toString());
System.out.println("e.printStackTrace():
");
【11】;}}}
(12)在java.io包中有某个类同时实现了DataInput接口和DataOutput接口,这个类
是【12】。
(13)在Java程序中,主线程一般具有【13】优先级。
(14)当实现Runnable接口时,要实现的方法是【14】。
(15)mouseDragged()方法是MouseMotionListener接口中的抽象方法,该方法的参数
是【15】类。