Java语言程序设计一自考题1.docx
《Java语言程序设计一自考题1.docx》由会员分享,可在线阅读,更多相关《Java语言程序设计一自考题1.docx(18页珍藏版)》请在冰豆网上搜索。
Java语言程序设计一自考题1
Java语言程序设计
(一)自考题-1
(总分:
100.00,做题时间:
90分钟)
一、单项选择题(总题数:
10,分数:
10.00)
1.下列有关Java的叙述错误的是()
A.是一种强类型语言B.与平台无关
C.可以使用汉字变量名D.不检查数组下标越界
(分数:
1.00)
A.
B.
C.
D. √
解析:
2.在Java语言中执行如下语句后,i和j的值分别为()
inti=10;inti=++i;
A.11和11B.10和10
C.10和11D.11和10
(分数:
1.00)
A. √
B.
C.
D.
解析:
[解析]本题主要考查的知识点为Java运算符。
[要点透析]i=++i,++运算符在变量i前,变量i先加1,再赋值给变量j,故i=j=11。
3.接口的所有变量和方法分别默认为()
A.finalstaic和publicabstractB.finalstatic和publicfinal
C.publicstatic和publicabstractD.publicstatic和publicfinal
(分数:
1.00)
A. √
B.
C.
D.
解析:
[解析]本题主要考查的知识点为Java接口。
[要点透析]接口是一种由常量定义和抽象方法组成的特殊类。
用public修饰的接口是公共接口,可被所有的类和接口使用,没有public修饰的接口只能被同一个包中的其他类和接口使用。
接口的所有变量都默认为是finalstatic属性,所有的方法都默认为是publicabstract属性。
一个类通过使用implements声明自己使用一个或多个接口。
实现多个接口时,接口名之间用逗号隔开。
4.下列有关数组的叙述错误的是()
A.数组是将一组相同类型的数据顺序存储,组成一种复合数据类型
B.在Java语言中,数组是一种引用类型,数组名如同对象名一样,是一种引用
C.对于多维数组,从最高维开始,可以对每一维分配不等长的空间
D.在Java语言中,数组元素可以互相赋值,而数组名不能直接赋值
(分数:
1.00)
A.
B.
C.
D. √
解析:
[解析]本题主要考查的知识点为Java数组。
[要点透析]数组是一种引用类型,一个数组名在不同时间可引用不同的数组,数组名之间可以赋值。
5.包含当事件发生时从源传递给监视器的特定事件信息的对象是()
A.事件对象B.源对象
C.监视器对象D.接口
(分数:
1.00)
A. √
B.
C.
D.
解析:
[解析]本题主要考查的知识点为Java事件驱动模型。
[要点透析]当用户点击Button对象对应的按钮时,系统就将一个ActionEvent事件对象从事件激发对象传递到监视器。
ActionEvent对象包含的信息有事件发生在哪一个按钮上以及有关事件的其他信息。
6.菜单的事件源是用鼠标点击某个菜单项,要实现的接口方法是actionPerformed(ActionEvente),获得事件源的方法是getSource(),处理该事件的接口是()
A.ActionListenerB.actionPerformed
C.getSourceD.ItemListener
(分数:
1.00)
A. √
B.
C.
D.
解析:
[解析]本题主要考查的知识点为Java菜单事件处理方法及其接口。
[要点透析]处理该事件的接口是ActionListener,要实现的接口方法是actionPerformed(ActionEvente),获得事件源的方法是getSource()。
7.以下关于Java语言的转义字符及其含义,说法错误的是()
A.转义字符'/t'的含义是水平制表符
B.转义字符'/n'的含义是换行符
C.转义字符'/nnn'的含义是用十进制数值表示字符的ASCII码
D.转义字符'/b'的含义是退格
(分数:
1.00)
A.
B.
C. √
D.
解析:
[解析]本题主要考查的知识点为Java语言的转义字符。
[要点透析]转义字符'/nnn'的含义是n为8进制数字,用八进制数值表示字符的ASCII码。
8.当线程A使用某个对象,而此对象又需要线程B修改后才能符合A线程的需要,这时线程A就要等待线程B完成修改工作,这种现象称为()
A.线程的同步B.线程的互斥
C.线程的调度D.线程的就绪
(分数:
1.00)
A. √
B.
C.
D.
解析:
9.采用缓冲式输出时,如果又想立即写入到文件,则需要调用的方法是()
A.flash()B.flush()
C.Write()D.read()
(分数:
1.00)
A.
B. √
C.
D.
解析:
10.在Java语言中,支持网络通信的软件所在的包是()
A.java.utilB.java.net
C.java.ioD.java.internet
(分数:
1.00)
A.
B. √
C.
D.
解析:
二、填空题(总题数:
10,分数:
20.00)
11.Java语言使用1字符集,共有65535个字符。
(分数:
2.00)
填空项1:
__________________ (正确答案:
Unicode)
解析:
12.在Java语言中,package语句必须出现在程序文件的1。
(分数:
2.00)
填空项1:
__________________ (正确答案:
起始行)
解析:
13.Java小应用程序中,为了在Java页面上显示动态效果,需要使用1方法,该方法先清除paint2方法以前所画的内容,然后再调用paint3方法。
(分数:
2.00)
填空项1:
__________________ (正确答案:
repaint---|||________|||---)
解析:
14.在switch语句中,如果要使各种情况互相排斥,仅执行一个子句的语句序列,每个子句都需要以1语句结束。
(分数:
2.00)
填空项1:
__________________ (正确答案:
break)
解析:
15.设定文本框对象text使其不可编辑,对应的代码是1。
(分数:
2.00)
填空项1:
__________________ (正确答案:
text.setEditable(false))
解析:
16.键盘事件的接口是1。
(分数:
2.00)
填空项1:
__________________ (正确答案:
KeyListener)
解析:
17.三次曲线(CubicCurve2D)的方法double1中的8个参数分别是三次曲线的始点、两个控制点和2。
(分数:
2.00)
填空项1:
__________________ (正确答案:
终点)
解析:
18.由于sleep1方法可能产生2异常,应将sleep3方法写在try块中,并用catch块处理异常。
(分数:
2.00)
填空项1:
__________________ (正确答案:
InterruptedException)
解析:
19.1是一种特殊的方法,这种方法的名与它的类名相同,并且不返回结果,也不写上void关键字。
(分数:
2.00)
填空项1:
__________________ (正确答案:
构造方法)
解析:
20.在Java语言中,有了SQL语句对象sql后,根据“读取学生成绩表st中的所有记录并存于rs对象中”,定义rs对象的代码是1。
(分数:
2.00)
填空项1:
__________________ (正确答案:
ResultSetrs=sql.executeQuery("SELECT*FROMst"):
)
解析:
三、简答题(总题数:
6,分数:
18.00)
21.简述在Java语言中,循环语句包含的种类。
(分数:
3.00)
__________________________________________________________________________________________
正确答案:
(while语句、do…while语句、for语句。
)
解析:
22.下列类的定义中有哪些错误,写出错误原因或者进行改正。
classC2202
intx;
C2202(intx)this.x=x;
C2202()C2202(10);
intf()
inta=1;
x=a:
voidg()
inty;
y=a+x;
(分数:
3.00)
__________________________________________________________________________________________
正确答案:
(
(1)C2202(){C2202(10);}错误,可改为:
C2202(){this(10);}
(2)intf()错误,可改为:
voidf()。
(3)y=a+x;错误,原因是引用非法,在g方法中不能使用a。
)
解析:
23.文本框处理程序的基本内容有哪几个方面。
(分数:
3.00)
__________________________________________________________________________________________
正确答案:
(
(1)声明一个文本框名。
(2)建立一个文本框对象。
(3)将文本框对象加入到某个容器。
(4)对需要控制的文本框对象注册监视器,监听文本框的输入结束事件。
(5)-个处理文本框事件的方法,完成对截获事件进行判断和处理。
)
解析:
24.简述控制声音的播放的方法。
(分数:
3.00)
__________________________________________________________________________________________
正确答案:
(play()播放声音,loop()循环播放和stop()停止播放。
)
解析:
25.程序中要使用文件对话框打开和保存文件,应该用哪个包中的哪个类来实现?
(分数:
3.00)
__________________________________________________________________________________________
正确答案:
(可以用javax.swing包中的类JFileChooser类来实现。
)
解析:
26.简述编写访问数据库的Java程序需要的类。
(分数:
3.00)
__________________________________________________________________________________________
正确答案:
(
(1)DriverManger类。
(2)Connection类。
(3)Statement类。
(4)ResultSet类。
)
解析:
四、程序填空题(总题数:
5,分数:
20.00)
27.方法f2702(intn)返回2~n之间的所有质数的个数。
intf2702(intn)
inti,j,count=0;
for(i=2;i<=n;i++)
for(j=2;j<i;j++)
if(i%j==0)______
if(j==i)______;
returncount;
(分数:
4.00)
填空项1:
__________________ (正确答案:
break;
count++;)
解析:
28.下面小应用程序实现在一个文本框中输入整数后回车,另一个文本框中显示这个整数的平方。
importjavax.swing.*;
importjava.applet.*;
importjava.awt.event.*;
publicclassC2802extendsApplet
staticJTextFieldtext1,text2;
CCc=newCC();
publicvoidinit()
text1=newJTextField(10);
text2=newJTextField(20);
add(text1);add(text2);
______
classCCimplementsActionListener
publicvoidactionPerformed(ActionEvente)
if(e.getSource()==C2802.text1)
longn=______;
C2802.text2.setText(n*n+"");
(分数:
4.00)
填空项1:
__________________ (正确答案:
text1.addActionListener(c);
Long.parseLong(C2802.text1.getText()))
解析:
29.设计一个JFrame窗口,窗口中心有一个文本区。
另有4个菜单,每个菜单都有菜单项,每个菜单项都对应有快捷键,选择某个菜单项时,窗口中心的文本区显示相应信息。
importJava.awt.*;
importJava.awt.event.*;
importjavax.swing.*;
publicclassC2902implementsActionListener
______
JTextFieldtext=newJTextField(20);
Stringt[]="文件","编辑","格式","帮助";
Menumenu[]=newMenu[4];
Strings[]="打开","保存","复制","粘贴","字体","段落","小助手","关于";
MenuItemjmi[]=newMenuItem[8];
C2902()
JFramemyWin=newJFrame("Ex0606");
myWin.setDefaultCloseoperation(JFrame.EXIT_ON_CLOSE);
Containercon=myWin.getContentPane();
con.add(text,"Center");
text.setEditable(false);
myWin.setMenuBar(jmb);
inti;
for(i=0;i<4;i++)//生成四个菜单
menu[i]=newMenu(t[i]);
jmb.add(menu[i]);
for(i=0;i<8;i++)//每个菜单中放两个菜单项
jmi[i]=newMenuItem(s[i]);
menu[i/2].add(jmi[i]);
jmi[i].addActionListener(this);
jmi[i].______(newMenuShortcut(65+i));//设快捷键
myWin.setBounds(300,200,400,200);
mywin.setVisible(true);
publicVoidacionPerformed(AcionEVene)
text.setText("你选择了:
"+e.getActionCommand()+"菜单项.");
publicstaticvoidmain(String[]args)
newC2902();
(分数:
4.00)
填空项1:
__________________ (正确答案:
MenuBarjmb=newMenuBar();
setShortcut)
解析:
30.下面应用程序,绘制一个红色五角星,请完成程序。
importjava.awt.*;
importJavax.swing.*;
classMyPanelextendsJPanel
publicvoid______
intr=100;
intx1=100,
x2=(int)(r*(1-Math.cos((18*Math.PI)/180))),
x3=(int)(r*(1+Math.cos((18*Math.PI)/180))),
x4=(int)(r*(1-Math.cos((54*Math.PI)/180))),
x5=(int)(r*(1+Math.cos((54*Math.PI)/180))),
y1=0,
y2=(int)(r*(1-Math.sin((18*Math.PI)/180))),
y3=(int)(r*(1-Math.sin((18*Math.PI)/180))),
y4=(int)(r*(1+Math.sin((54*Math.PI)/180))).
y5=(int)(r*(1+Math.sin((54*Math.PI)/180)));
______
g.drawOval(0,0,200,200);
g.drawLine(x4,y4,x1,y1);g.drawLine(x1,y1,x5,y5);
g.drawLine(x5,y5,x2,y2);g.drawLine(x2,y2,x3,y3);
g.drawLine(x3,y3,x4,y4);
publicclassC3002extendsJFrame
C3002()
super("C3002");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
getContentPane().add(newMyPanel());
setSize(210,242);
setVisible(true);
publicstaticvoidmain(String[]args)
newC3002();
(分数:
4.00)
填空项1:
__________________ (正确答案:
paintComponent(Graphicsg)
g.setColor(Color.RED);)
解析:
31.下面程序运行后,连续输出20个相同的单词,请完程序。
publicclassC3102
publicstaticvoidmain(Stringargs[])
______
t.start();
classHelloimplementsRunnable
inti=0;
publicvoidrun()
while(______)
System.out.print(i+":
Hello");
(分数:
4.00)
填空项1:
__________________ (正确答案:
Threadt=newThread(newHello());
i++<20)
解析:
五、程序分析题(总题数:
5,分数:
20.00)
32.阅读下列程序,写出程序运行结果。
classA
intx,y;
A(intx,intyy)x=xx;y=yy;
interfaceA3202intf3202(Aa);
interfaceB3202intg3202();
publicclassC3202extendsA;implementsA3202,B3202
Aa=newA(x,y);
C3202(intx,inty)
super(x,y);
this.x=x*x;
this.y=y*y;
publicintf3202(Aa)returnx*a.x+x*a.y;
publicintg3202()returnx*a.x+x*a.y;
publicstaticvoidmain(String[]args)
intx=10,y=20;
Aa=newC3202(x,y);
C3202c=newC3202(x,y);
System.out.println(a.x+","+a.y);
System.out.println(c.f3202(a));
System.out.println(c.g3202());
(分数:
4.00)
__________________________________________________________________________________________
正确答案:
(运行结果:
100,400
50000
3000)
解析:
33.阅读下列程序,写出程序运行结果。
publicclassC3302
publicstaticvoidmain(String[]args)
int[][]a=1,2,3,4,5,6;
System.out.println(a.length+","+a[0].length+","+a[1][1]);
f3302(s[0],s[1]);
System.out.println(s[0]+","+s[1]);
Strings1="abc",s2="123";
s1+="xyz";
s2.concat("xyz");
System.out.println(s1+","+s2);
staticvoidf3302(Stringx,Stringy)
Stringz=x;x=y;y=z;
(分数:
4.00)
__________________________________________________________________________________________
正确答案:
(运行结果:
2,3,5
a,b
abcxyz,123)
解析:
34.阅读下程序,写出程序功能。
importjava.awt.*;
importjava.applet.*;
importjavax.swing.*;
importjava.awt.event.*;
publicclassC3402extendsApplet
staticJFramemyWin;
staticSetBGsetbg=newSetBG();
staticJButtonbutton;
publicvoidinit()
myWin=newJFrame("C3402");
myWin.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
myWin.setBounds(100,200,300,400);
myWin.setLayout(newFlowLayout();
Contain