广工java复习题及答案.docx
- 文档编号:11130909
- 上传时间:2023-02-25
- 格式:DOCX
- 页数:17
- 大小:20.51KB
广工java复习题及答案.docx
《广工java复习题及答案.docx》由会员分享,可在线阅读,更多相关《广工java复习题及答案.docx(17页珍藏版)》请在冰豆网上搜索。
广工java复习题及答案
Java复习题
一、选择题
(1)下列关于Frame类的说法不正确的是
A)Frame是Window类的直接子类
B)Frame对象显示的效果是一个窗口
C)Frame被默认初始化为可见
D)Frame的默认布局管理器为BorderLayout
(2)下列Java常见事件类中哪个是鼠标事件类?
A)InputEventB)KeyEvent
C)MouseEventD)WindowEvent
(3)在Applet的关键方法中,下列哪个方法是关闭浏览器以释放Applet占用的所有资源?
A)init()B)start()
C)stop()D)destroy()
(4)下列哪个选项的java源文件代码片段是不正确的?
A)packagetestpackage;B)importjava.io.*;
publicclassTest{}packagetestpackage;
publicclassTest{}
C)importjava.io.*;D)importjava.io.*;
classPerson{}importjava.awt.*;
publicclassTest{}publicclassTest{}
(5)下列InputStream类中哪个方法可以用于关闭流?
A)skip()B)close()
C)mark()D)reset()
(6)下列方法中哪个是启动线程的方法?
A)run()B)start()
C)sleep()D)suspend()
(7)在读文件Employee.dat时,使用该文件作为参数的类是
A)BufferReaderB)DataInputStream
C)DataOutoutStreamD)FileInputStream
(8)类Panel默认的布局管理器是
A)GridLayoutB)BorderLayout
C)FlowLayoutD)CardLayout
(9)在Java中,能实现多重继承效果的方式是
A)内部类B)适配器
C)接口D)同步
(10)下列不是InputStream子类的是
A)FileInputStream
B)DataInputStream
C)ObjectInputStream
D)RandomAccessFile
(11)下列关于JavaApplication与Applet的说法中,正确的是
A)都包含main()方法
B)都通过“appletviewer”命令执行
C)都通过“javac”命令编译
D)都嵌入在HTML文件中执行
(12)下列关于线程优先级的说法中,错误的是
A)线程的优先级是不能改变的
B)线程的优先级在创建线程时设置的
C)在创建线程后的任何时候都可以设置
D)线程优先级的取值范围是1~10
(13)下列程序的功能是在监控台上每隔一秒钟显示一个字符串“Hello”,能够填写在程序中下划线位置,使程序完整并能正确运行的语句是
publicclassTestimplementsRunnable{
publicstaticvoidmain(Stringargs[]){
Testt=newTest();
Threadtt=newThread(t);
tt.start();
}
publicvoidrun(){
for(;;){
try{
__________;
}catch(_______e){}
System.put.println("Hello");
}
}
}
A)sleep(1000)B)sleep(1000)
InterruptedExceptionIOException
C)Thread.sleep(1000)D)Thread.sleep(1000)
RuntimeExceptionInterruptedException
(14)下列不属于Swing中构件的是
A)JPanelB)JTable
C)MenuD)JFrame
(15)下列方法中,不属于MouseListener接口的是
A)mousePressed()B)mouseEntered()
C)keyPressed()D)mouseClicked()
(16)在oneMethod()方法运行正常的情况下,程序段将输出什么?
publicvoidtest()
{
try{oneMethod();
System.out.println("condition1");
}catch(ArrayIndexOutOfBoundsExceptione)
{
System.out.println("condition2");
}catch(Exceptione)
{
System.out.println("condition3");
}finally
{
System.out.println("finally");
}
}
A)condition1B)condition2
C)condition3D)condition1
finally
(17)下列常见的系统定义的异常中,哪个是找不到指定的文件或目录异常?
A)ClassNotFoundExceptionB)IOException
C)FileNotFoundExceptionD)UnknownHostException
(18)线程生命周期中正确的状态是
A)新建状态、运行状态和终止状态
B)新建状态、运行状态、阻塞状态和终止状态
C)新建状态、可运行状态、运行状态、阻塞状态和终止状态
D)新建状态、可运行状态、运行状态、恢复状态和终止状态
(19)Thread类中能运行线程体的方法是
A)start()B)resume()
C)init()D)run()
(20)下列关于Applet的说法中,错误的是
A)Applet自身不能运行,必须嵌入到其它应用程序(如浏览器)中运行
B)可以在安全策略的控制下读写本地磁盘文件
C)Java中不支持向Applet传递参数
D)Applet的主类要定义为java.applet.Applet类的子类
(21)下列描述中,正确的是
A)在Serializable接口中定义了抽象方法
B)在Serializable接口中定义了常量
C)在Serializable接口中没有定义抽象方法,也没有定义常量
D)在Serializable接口中定义了成员方法
(22)下面的程序段的功能是()。
Filefile1=newFile("/xxx/yyy/zzz");
file1.mkdir();
A)在当前目录下生成子目录:
\xxx\yyy\zzzB)生成目录:
e:
\xxx\yyy\zzz
C)在当前目录下生成文件xxx.yyy.zzzD)以上说法都不对
(23)下面关于Java中异常处理try块的说法正确的是()?
A)try块后必须有一个catch块,用来处理try块中抛出的异常。
B)catch块后必须有finally块。
C)可能抛出异常的方法调用应放在try块中。
D)对抛出的异常的处理必须放在try块中
(24)关于BufferedReader类的readLine()方法,以下说法错误的是()。
A)方法readLine()每次读取一行数据。
B)方法readLine()每次读取一个字节。
C)该方法可能抛出IOException异常,调用该方法时通常应将它放到try块中,并通过catch块处理异常。
D)如果读到流的末尾,该方法返回的结果为null。
二、填空题
(1)FileInputStream是字节流;BufferedWriter是字符流;ObjectOutputStream是对象流。
(2)当使用Threadt=newThread(r)创建一个线程时,表达式:
rinstanceofThread的值为false。
(3)组件不能独立地显示出来,必须将组件放在一定的容器中才能显示。
(4)能将显示空间分成很多层的布局管理器是卡片布局。
(5)使用Swing编写Applet,则该Applet的主类应该定义为JApplet类的子类。
(6)键盘键入字符串并在计算机屏幕上显示,这时的数据源是System.in。
(7)在IP协议中我们用_IP地址_来标示网络上的通信实体,用__端口__来标示服务程序。
(8)下列程序中,要求输出一个特定文件(这里是ex2_1.java)的相关信息,包括文件的名字,相对路径以及文件夹的长度。
请将程序补充完整。
程序运行结果如下:
name:
ex2_1.java
path:
ex2_1.java
length:
299
===========
importjava.io.*;
publicclassex2_1{
publicstaticvoidmain(String[]args){
Filefile2_1=newFile(”ex2_1.java”);
System.out.println(”name:
”+file2_1._getName()________);
System.out.println(”path:
”+file2_1.__getPath()__________);
System.out.println(”length:
”+file2_1._length());]
}
}
(9)线程的创建有两种方法:
实现__Runnable_接口和继承Thread类。
(10)RandomAccessFile所实现的接口是_DataInput_和DataOutput接口
(11)查询数据库的7个标准步骤是:
载人JDBC驱动器、定义连接的网址URL、建立连接、建立声明对象、执行查询或更新、处理结果、_关闭连接__。
三、程序分析题
1、按注释提示完成文件复制的程序
//FileStream源代码如下:
importjava.io.*;
classFileStream{
publicstaticvoidmain(Stringargs[]){
try{
FileinFile=newFile("file1.txt");//指定源文件
FileoutFile=newFile("file2.txt");//指定目标文件
FileInputStreamfis=
(1)______________;
FileOutputStreamfos=newFileOutputStream(outFile);
intc;
//逐字节从源文件中输入,再输出到fos流
while((c=fis.read())!
=-1)
(2)____________;
fis.close();
fos.close();
}
catch(Exceptione){
System.out.println("FileStreamsTest:
"+e);
}
}
}
答案:
(1)newFileInputStream(inFile);
(2)fos.write(c);
2、阅读下面的程序,并回答问题(问3分,问3分,共6分)。
importjava.io.*;
publicclassTest{
publicstaticvoidmain(Stringargs[])throwsIOException{
BufferedReaderbuf=newBufferedReader(
newInputStreamReader(System.in));
while(true){
Stringstr=buf.readLine();
if(str.equals("quit"))
break;
intx=Integer.parseInt(str);
System.out.println(x*x);
}
}
}
编译运行上面的程序:
从键盘输入10,回车后输出的结果如何?
从键盘输入exit,回车后程序能正确执行吗?
为什么?
答案:
100
不能;因为方法Integer.parseInt(str)不能将字符串“exit”转化为整数,抛出异常。
四、程序设计题
建立一个文本文件,输入学生3门课的成绩,编写一个程序,读入这个文件中的数据,输出每门课的成绩的最小值,最大值和平均值。
[解答]:
成绩.txt文件
id#000001e#98m#76p#76
id#000002e#54m#74p#76
id#000003e#98m#73p#78
id#000004e#98m#77p#76
id#000005e#92m#45p#76
id#000006e#94m#33p#74
id#000007e#98m#88p#76
id#000008e#96m#34p#76
importjava.io.BufferedReader;
importjava.io.FileReader;
importjava.util.ArrayList;
importjava.util.Iterator;
importjava.util.List;
importjava.util.StringTokenizer;
/**
*建立一个文本文件,输入学生3门课的成绩读入这个文件中的数据,输出每门课的成绩的最小值,最大值和平均值。
*/
classStudent{
Stringid;
//英语成绩
floate;
//数字成绩
floatm;
//物理成绩
floatp;
/**
*@returnReturnsthee.
*/
publicfloatgetE(){
returne;
}
/**
*@parame
*Theetoset.
*/
publicvoidsetE(floate){
this.e=e;
}
/**
*@returnReturnstheid.
*/
publicStringgetId(){
returnid;
}
/**
*@paramid
*Theidtoset.
*/
publicvoidsetId(Stringid){
this.id=id;
}
/**
*@returnReturnsthem.
*/
publicfloatgetM(){
returnm;
}
/**
*@paramm
*Themtoset.
*/
publicvoidsetM(floatm){
this.m=m;
}
/**
*@returnReturnsthep.
*/
publicfloatgetP(){
returnp;
}
/**
*@paramp
*Theptoset.
*/
publicvoidsetP(floatp){
this.p=p;
}
}
publicclassCountS{
//文件路径
Stringfilepath;
//list用来存放学生数据
Listlist=newArrayList();
publicCountS(Stringstr){
filepath=str;
init();
}
//初始化操作,用来读数据和解析数据放入相应的对象中
publicvoidinit(){
try{
FileReaderfr=newFileReader(filepath);
BufferedReaderbr=newBufferedReader(fr);
//读数据
Stringstr;
while((str=br.readLine())!
=null){
Students=newStudent();
//解析数据
StringTokenizerst=newStringTokenizer(str.toString(),"");
//前面是标号,后面是数据
Stringfirst="";
Stringdata="";
Stringelem=st.nextToken();
//id的解析
first=elem.split("#")[0];
data=elem.split("#")[1];
s.setId(data);
//英语成绩
elem=st.nextToken();
first=elem.split("#")[0];
data=elem.split("#")[1];
s.setE(Float.valueOf(data).floatValue());
//数学成绩
elem=st.nextToken();
first=elem.split("#")[0];
data=elem.split("#")[1];
s.setM(Float.valueOf(data).floatValue());
//物理成绩
elem=st.nextToken();
first=elem.split("#")[0];
data=elem.split("#")[1];
s.setP(Float.valueOf(data).floatValue());
//加入list
list.add(s);
}
}catch(Exceptione){
e.printStackTrace();
}
}
publicvoidcountAnddisplay(){
//0是最小值,1,最大值2是平均分
float[]e=newfloat[]{100,0,0};
float[]m=newfloat[]{100,0,0};
float[]p=newfloat[]{100,0,0};
for(Iteratorit=list.iterator();it.hasNext();){
Studentele=(Student)it.next();
//英语
if(e[0]>ele.getE()){
e[0]=ele.getE();
}
if(e[1] e[1]=ele.getE(); } e[2]+=ele.getE(); //数学 if(m[0]>ele.getM()){ m[0]=ele.getM(); } if(m[1] m[1]=ele.getM(); } m[2]+=ele.getM(); //物理 if(p[0]>ele.getP()){ p[0]=ele.getP(); } if(p[1] p[1]=ele.getP(); } p[2]+=ele.getP(); } //平均分 e[2]=e[2]/list.size(); m[2]=m[2]/list.size(); p[2]=p[2]/list.size(); //打印 System.out.println("英语最小值: "+e[0]+""); System.out.println("英语最大值: "+e[1]+""); System.out.println("英语平均分: "+e[2]+""); System.out.println("数学最小值: "+m[0]+""); System.out.println("数学最大值: "+m[1]+""); System.out.println("数学平均分: "+m[2]+""); System.out.println("物理最小值: "+p[0]+""); System.out.println("物理最大值: "+p[1]+""); System.out.println("物理平均分: "+p[2]+""); } publicstaticvoidmain(String[]args){ CountScs=newCountS("d: /成绩.txt"); cs.countAnddisplay(); } }
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 广工 java复习题及答案 java 复习题 答案