份Java自考题参考答案docWord文档格式.docx
- 文档编号:17506615
- 上传时间:2022-12-06
- 格式:DOCX
- 页数:11
- 大小:27.80KB
份Java自考题参考答案docWord文档格式.docx
《份Java自考题参考答案docWord文档格式.docx》由会员分享,可在线阅读,更多相关《份Java自考题参考答案docWord文档格式.docx(11页珍藏版)》请在冰豆网上搜索。
C.ActionListenerD.SelectionListener
7.Java语言规定,程序绘图区域的坐标原点位于整个区域的()
A.左上角B.右上角
C.左下角D.右下角
8.以下关于线程互斥和同步的叙述中,正确的是()
A.多线程互斥使用各自资源的程序段,在操作系统中称为临界段
B.临界段的作用是使某线程能够使用其它线程的资源
C.可以使用notify()方法通知等待线程结束等待
D.线程的互斥和同步可以很好地解决死锁问题
9.当用户关闭文件对话框时,有可能返回的整数常量是()
A.JFileChooser.CLOSE_OPTIONB.JFileChooser.APPROVE_OPTION
C.JFileChooser.SAVE_OPTIOND.JFileChooser.OPEN_OPTION
10.获取InetAddress对象的域名所用到的方法是()
A.getByName()B.getHostAddress()
C.getLocalHost()D.getHostName()
二、填空题(本大题共10小题,每小题2分,共20分)
请在每小题的空格中填上正确答案。
错填、不填均无分。
11.Java源文件的扩展名是___.java___。
12.表达式-4>
>
l的十进制值是__-2___。
13.在定义成员变量时,用关键字__static___修饰的是类变量。
l4.布尔类型数组元素的默认初值是__false__。
15.在Swing中,面板有两种,一种是JPanel,另一种是__JScorllPane___。
16.对话框的默认布局是__BorderLayout___。
17.Java语言的绘图模式有两种,它们是正常模式和__异或模式__。
18.当线程处于新建状态后,调用了start()方法,该线程就处于___就绪___状态。
19.如果要按行输入输出文件,需采用___缓冲式____输入输出方式。
20.Java程序与数据库连接的API被称为__JDBC___。
三、简答题(本大题共6小题,每小题3分,共18分)
21.请写一个if语句,判断整数n是否同时满足“被3除余2,被7除余1”的条件,满足时输出“OK”,否则输出“NO”。
if(n%3==0&
&
n%7==1)System.out.println(“OK”);
elseSystem.out.println(“NO”);
22.请写出在面向对象系统中,类和对象的关系。
类是对象的集合,对象是类的实例。
23.请写出JFrame、Frame以及Window这三个类的继承关系(按照从父类到子类顺序排列)。
WindowFrameJFrame
24.请写出java.applet.AudioClip控制声音播放的三个方法。
play()loop()stop()
25.请写出在使用FileFilter类设置筛选条件时,方法accept()以及getDescription()的作用。
accept():
当选择文件与指定类型相同时,返回true
getDescription():
用于对筛选条件的描述
26.请写出Java程序实现数据库更新可以使用的三种对象。
Statement、PreparedStatement、ResultSet
四、程序填空题(本大题共5小题,每空2分,共20分)
27.方法intnumberOfDigits(intn)的功能是计算十进制正整数n的位数。
intnumberOfDigits(intn){
intc=0:
do{n/=10;
__c++___;
}while(__n>
0_______);
returnc;
}
28.以下程序创建了一个窗口,窗口内设置一个按钮,单击该按钮,其标题会显示单击的次数。
importjava.awt.*;
importjava.awt.event.*;
importjavax.swing.*;
publicclassBottonGUI{
publicstaticvoidmain(String[]args){
CountButtonmyButtonGUI=newCountButton();
myButtonGUI.setVisible(true);
classCountButtonextendsJFrameimplementsActionListener{
publicstaticfinalintWidth=250;
publicstaticfinalintHeight=200;
publicinti=0;
JButtonmyBtn=newJButton(String.valueOf(i));
CountButton(){
setSize(Width,Height);
setTitle("
计数按钮"
);
ContainerconPane=getContentPane();
conPane.setLayout(newFlowLayout());
myBtn.addActionListener(this);
conPane.__add(myBtn)___;
publicvoidactionPerformed(ActionEvente){
if(e.getSource()==myBtn)
myBtn._setLabel_(String.valueOf(++i));
29.以下小应用程序设置了一个文本区,用于显示鼠标单击的坐标。
importjava.applet.*;
importjava.awt.*;
importjavax.swing.*;
importjava.awt.event.*;
classMyWindowextendsJFrameimplementsMouseListener{
JTextAreatext;
JPanelpanel;
intx,y;
MyWindow(Strings){__super(s)__;
Containercon=this.getContentPane();
con.setLayout(newGridLayout(2,1));
this.setSize(200,300);
panel=newJPanel();
con.add(panel);
text=newJTextArea(10,20);
con.add(text);
addMouseListener(this);
this.setVisible(true);
publicvoidpaint(Graphicsg){text.append("
当前鼠标单击的位置是:
"
+x+"
,"
+y+"
\n"
publicvoidmousePressed(MouseEvente){}
publicvoidmouseReleased(MouseEvente){}
publicvoidmouseEntered(MouseEvente){}
publicvoidmouseExited(MouseEvente){}
publicvoid_mouseClicked__(MouseEvente){x=e.getX();
y=e.getY();
repaint();
}
publicclassMouseDemoextendsApplet{
publicvoidinit(){
MyWindowmyWndow=newMyWindow("
鼠标演示程序"
30.以下小应用程序利用Graphics2D绘制一条直线。
importjava.applet.*;
importjava.awt.*:
importjava.awt.geom.*;
publicclassDrawLineextendsApplet{
publicvoidpaint(Graphicsg){
Graphics2Dg2d=_(Graphics2D)__g;
Line2Dline=newLine2D.Double(30.0,30.0,180.0,30.0);
g2d._draw(line)_;
31.方法readByURL()的功能是已知网址,创建URL对象,设置网络连接,获取网址上的内容并显示。
其中获取网址上的内容并显示的代码已被省略。
publicvoidreadByURL(StringurlName){
try{
URLurl=newURL(urlName);
URLConnectiontc=url.__openConnection(url)__;
tc.__connect()__;
InputStreamReaderin=newInputStreamReade(tc.getInputStream());
BufferedReaderdis=newBufferedReader(in);
StringinLine;
......//这里的代码实现逐行输入网址上的内容并显示
dis.close();
}catch(MalformedURLExceptione){e.printStackTrace();
catch(IOExceptione){e.printStackTrace();
)
五、程序分析题(本大题共5小题,每小题4分,共20分)
32.阅读下列程序,请写出该程序的输出结果。
classB{
intb;
B(intx){b=x;
System.out.println("
b="
+b);
classAextendsB{
inta;
A(intx,inty){
super(x);
a=y;
System.out.println("
+b+"
,a="
+a);
publicclassa32{
Aobj=newA(1,2);
b=1
b=1,a=2
33.阅读下列程序,请写出该程序的输出结果。
publicclassTest33{
int[][]a={{2,3},{1,6}};
int[][]b={{4,2},{3,5}};
int[][]c=newint[2][2];
inti,j;
for(i=0;
i<
a.length;
i++)
for(j=0;
j<
a[i].length;
j++){
c[i][i]=a[i][i]+b[i][i];
System.out.print(c[i][i]+"
"
if(j==a[i].length-1)System.out.println();
65
411
34.阅读下列程序,请写出该程序的功能。
importjava.applet.*;
importjavax.swing.*;
importjava.awt.event.*;
importjava.util.*;
publicclassStrCextendsApplet{
staticJTextFieldtextl,text2;
Ss=newS();
textl=newJTextField(20);
text2=newJTextField(20);
setSize(400,l00);
add(textl);
add(text2);
textl.addActionListener(s);
classSimplementsActionListener(
if(e.getSource()==StrC.textl){
Strings=StrC.textl.getText();
Stringss="
:
StringTokenizerpas=newStringTokenizer(s);
while(pas.hasMoreTokens()){ss+=pas.nextToken();
StrC.text2.setText(ss);
在文本框text1中输入字符串回车时,获取其字符串值,然后去掉空格、tab后显示在文本框text2中。
35.阅读下列程序,请写出该程序的功能。
importjava.awt.event.*;
publicclassComboBoxApp{
ComboBoxDemomyComboBoxGUI=newComboBoxDemo();
classComboBoxDemoextendsJFrameimplementsActionListener{
StringproList[]={"
Java"
C++,"
Fortran"
JTextFieldtext;
JComboBoxcomboBox;
publicComboBoxDemo(){
setSize(200,100);
conPane.setBackground(Color.BLUE);
comboBox=newJComboBox(proList);
comboBox.addActionListener(this);
comboBox.setEditable(true);
conPane.add(comboBox);
text=newJTextField(10);
JScrollPanejsp=newJScrollPane(text);
conPane.add(jsp);
this.setVisible(true);
if(e.getSource()==comboBox)
text.setText(String.valueOf
(comboBox.getSelectedltem().toString().1ength()));
在大小为200*100的蓝色背景窗体框架上,按流型布局的方式添加一个下拉选择框和一个带滚动条的文本框;
当点击下拉选择框时,将选择内容的长度显示在文本框text中
36.阅读下列程序,请写出该程序的功能。
publicclassTwoThreadextendsThread{
privateThreadcreatorThread;
publicTwoThread(){creatorThread=Thread.currentThread();
publicvoidrun(){
for(inti=0;
5;
i++){printMsg();
publicvoidprintMsg(){
Threadt=Thread.currentThread();
if(t==creatorThread){System.out.println("
Creatorthread"
}elseif(t==this){System.out.println("
Newthread"
TwoThreadtt=newTwoThread();
tt.start();
for(inti=O;
10;
i++){tt.printMsg();
通过10次循环判断当前获得cpu使用权的是主线程还是tt线程;
如果是主线程则输出"
如果是tt线程,则输出"
。
六、程序设计题(本大题共2小题,每小题6分,共12分)
37.请编写方法doubleaverageOfArray(double[]a),返回非空数组中正数的平均值(数组中可能有非正数元素)。
doubleaverageOfArray(double[]a){
inti,n=0;
doubles=0.0;
for(i=0;
a.length;
i++)if(a[i]>
0){s=s+a[i];
n++;
returns/n;
38.一个小应用程序,界面如题38图所示,其功能为比较两个文本框中输入的字符串是否相同,如果相同,那么在下方显示“两个字符串相同”,否则,显示“两个字符串不同”。
按下“重置”按钮后清空文本框里面的内容。
以下是程序的大部分,请编写其中的监视器方法。
publicclassa38extendsAppletimplementsActionListener{
JTextFieldtextl,text2;
JButtonbutton1,button2;
JLabellabel1;
text1=newJTextField(12);
text2=newJTextField(12);
buttonl=newJButton("
比较"
button2=newJButton("
重置"
):
label1=newJLabel("
此处显示比较结果"
add(text1);
add(text2);
add(button1);
add(button2);
add(1abel1);
text1.requestFocus();
//将光标自动定位到第一个文本框
button1.addActionListener(this);
button2.addActionListener(this);
//请在以下位置编写代码
if(e.getSource()==button1){
if(text1.getText().equals(text2.getText()))
label1.setText(“两个字符串相同”);
elselabel1.setText(“两个字符串不同”);
}elseif(e.getSource()==button2){
text1.setText(null);
text2.setText(null);
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 考题 参考答案 doc