全国自考Java语言程序设计一考前密卷04747含答案.docx
《全国自考Java语言程序设计一考前密卷04747含答案.docx》由会员分享,可在线阅读,更多相关《全国自考Java语言程序设计一考前密卷04747含答案.docx(24页珍藏版)》请在冰豆网上搜索。
全国自考Java语言程序设计一考前密卷04747含答案
2014年10月全国自考Java语言程序设计
(一)考前密卷04747(含答案)
一、单项选择题(本大题共10小题,每小题1分,共10分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
第1题以下是关于Java语言关键字的叙述,其中正确的是()
A.关键字可以用来描述类的成员类型,但是不能描述普通变量
B.关键字由字母(包括英文字母、下划线字符、美元字符、文字字符)和数字组成
C.关键字不可以用作变量、方法、类或标号的标识符
D.break和main都是Java语言的关键字
【正确答案】C
【你的答案】
本题分数1分
第2题执行以下代码,输出结果是()
int x=5,y=7,u=9,v=6;
System.out.println(x>y?
x+2:
u>v?
u-3:
v+2);
A.8
B.6
C.7
D.true
【正确答案】B
【你的答案】
本题分数1分
第3题Java语言中,只限子类或者同一包中的类的方法能访问的访问权限是 ()
A.public
B.private
C.protected
D.<无修饰>
【正确答案】C
【你的答案】
本题分数1分
第4题设有数组定义int[][]x={{1,2},{3,4,5},{6},{}};,则x.length的值为()
A.3
B.4
C.6
D.7
【正确答案】B
【你的答案】
本题分数1分
第5题在以下Swing的类中,属于容器的是()
A.JApplet
B.JButton
C.JTextArea
D.JMenu
【正确答案】A
【你的答案】
本题分数1分
第6题在以下供选择的方法中,属于接口MouseMotionListener的方法是 ()
A.mouseReleased()
B.mouseEntered()
C.mouseExited()
D.mouseMoved()
【正确答案】D
【你的答案】
本题分数1分
第7题小程序要播放音频文件,可使用类 ()
A.Audio
B.JAudio
C.AudioClip
D.JAudioClip
【正确答案】C
【你的答案】
本题分数1分
第8题以下是关于线程的叙述,正确的是()
A.多线程的使用可以提高设备的平行工作能力,但是使系统管理变得复杂
B.同一个进程下的线程都有自己的状态、专用数据段和独立的内存资源
C.线程是能独立运行的程序
D.进程的执行效率比线程的执行效率高
【正确答案】A
【你的答案】
本题分数1分
第9题在Java的类库中,包含实现输入/输出操作的包是()
A.java.util
B.java.io
C.java.applet
D.java.awt
【正确答案】B
【你的答案】
本题分数1分
第10题在编写访问数据库的Java程序时, ResultSet对象的作用是 ()
A.建立新数据库连接
B.用来表示与数据库的连接
C.在指定的连接中处理SQL语句
D.存储查询结果
【正确答案】D
二、填空题(本大题共10小题,每小题2分,共20分)请在每小题的空格中填上正确答案。
错填、不填均无分。
第1题Java语言采用多种机制来保证可移植性,其中最主要的是___。
【正确答案】虚拟机 (或者字节码)
【你的答案】
本题分数2分
你的得分
修改分数
第2题程序包声明的格式是___。
【正确答案】package 包名;
【你的答案】
本题分数2分
你的得分
修改分数
第3题当联编推迟至运行时间实现时,该联编过程称为___。
【正确答案】动态联编
【你的答案】
本题分数2分
你的得分
修改分数
第4题使用默认字节字符对应表,将字符串转化为字节数组的方法是___。
【正确答案】getBytes()
【你的答案】
本题分数2分
你的得分
修改分数
第5题在Swing中,带有滚动条的面板的类名是___。
【正确答案】JScrollPane
【你的答案】
本题分数2分
你的得分
修改分数
第6题组合框(JComboBox)是___的组合。
【正确答案】文本框和列表
【你的答案】
本题分数2分
你的得分
修改分数
第7题在某个组件中绘图,一般应该为这个组件所属的子类重写___方法。
【正确答案】paint()
【你的答案】
本题分数2分
你的得分
修改分数
第8题多线程互斥使用___的程序段,在操作系统中称为临界段。
【正确答案】共享资源
【你的答案】
本题分数2分
你的得分
修改分数
第9题在Java语言中,文件随机访问可以利用___类实现。
【正确答案】RandomAccessFile
【你的答案】
本题分数2分
你的得分
修改分数
第10题Java程序可以用纯Java的___驱动程序,实现与数据库连接。
【正确答案】JDBC
三、简答题(本大题共6小题,每小题3分,共18分)
第1题
【正确答案】double s=0.0;
for(int i=1;i<=10;i++)
s=s+1.0/i;
【你的答案】
本题分数3分
你的得分
修改分数
第2题请写出Applet类中init()方法的功能。
【正确答案】创建所需要的对象、设置初始状态、装载图像、设置参数等。
【你的答案】
本题分数3分
你的得分
修改分数
第3题请写出空布局安置组件的两个步骤。
【正确答案】先使用add()方法向容器添加组件,然后调用setBounds()方法设置组件在容器中的位置和组件本身的大小。
【你的答案】
本题分数3分
你的得分
修改分数
第4题在Swing中,对话框有几种?
并请写出它们的主要区别。
【正确答案】对话框分为强制型和非强制型。
强制型对话框强制对话过程不能中断,非强制型对话框可以中断对话过程。
【你的答案】
本题分数3分
你的得分
修改分数
第5题请写出用Runnable接口实现多线程的主要工作。
【正确答案】声明实现Runnable接口的类,在类内实现run()方法;并在类内声明线程对象,在init()方法或start()方法中创建新线程;并在start()方法中启动新线程。
【你的答案】
本题分数3分
你的得分
修改分数
第6题请写出用InetAddress类,获取网址为“”的IP地址的Java语句。
String IPName=addr.getHostAddress();
"/>
【正确答案】InetAddress addr=InetAddress.getByName("www.edu.cn");
String IPName=addr.getHostAddress();
【你的答案】
四、程序填空题(本大题共5小题,每空2分,共20分)
第1题方法boolean isPrime(int n)的功能是判断正整数n(n>1)是否为质数。
static boolean isPrime(int n){
int i;
if(n==2)return true;
if(n%2==0) return false;
for(i=3;i*i<=n;i+=2)
if(______) break;
if(______) return true;
return false;
}
【正确答案】n%i==0
i*i>n
【你的答案】
本题分数2分
你的得分
修改分数
第2题某小应用程序窗口中有一个文本框,一个8行10列的文本区以及一个按钮,点击这个按钮时,在文本框中输入的内容会追加到文本区中。
import java.applet.*;import javax.swing.*;import java.awt.event.*;
public class TextAPP extends Applet implements ActionListener{
JTextField input; JTextArea display;JButton append;
public void init(){
input=new JTextField(10);
display=new______;
append=new JButton("追加");
add(input);add(display);add(append);
input.requestFocus();display.setLineWrap(true);
append.addActionListener(this);
}
public void actionPerformed(ActionEvent e){
display. ___ ___ (input.getText()+"");
}
}
【正确答案】JTextArea(8,10)
append
【你的答案】
本题分数2分
你的得分
修改分数
第3题某小应用程序有一个由3个单选按钮组成的颜色选择组,当选中某种颜色时,窗口的背景颜色将作相应的变化。
这里给出的是窗口子类MyWindow的定义的框架以及其构造函数的定义。
class MyWindow extends JFrame implements______{
…
MyWindow(String s){
super(s);
Container con=this.getContentPane();
con.setLayout(new GridLayout(3,2));
this.setLocation(100,100);this.setSize(400,400);
panel1=new Panel1();
label1=new JLabel("改变背景颜色",JLabel.CENTER);
con.add(label1);con. ______;
panel1.box1.addItemListener(this);
panel1.box2.addltemListener(this);
panel1.box3.addltemListener(this);
this.setVisible(true);this.pack();
}
…
}
【正确答案】ItemListener
add(panel1)
【你的答案】
本题分数2分
你的得分
修改分数
第4题某小应用程序的界面有两个按钮,点击“画圆”按钮,程序在窗口画一个圆,点击“画矩形”按钮,程序在窗口画一个矩形。
import java.applet.*;import java.awt.*;
import java.awt.event.*;import javax.swing.*;
public class Class1 extends Applet implements ActionListener{
boolean c=false;int r=50,a=50,b=50;
JButton b1,b2;
public void init(){
setSize(200,200);setBackground(Color.blue);
b1=new JButton("画 圆");b2=new JButton("画矩形");
b1.addActionListener(this);b2.addActionListener(this);
add(b1);add(b2);setVisible(true);
}
public void___ ___ (Graphics g){
g.clearRect(70,100,130,200);
g.setColor(Color.red);
if(c) g.drawRoundRect(70,100,r,r,r,r);
else g.drawRect(70,100,a,b);
}
public void update(Graphics g){paint(g); }
public void actionPerformed(ActionEvent e){
if(e.getSource()==b1){c=true; }
else if(e.getSource()==b2){c=false;}
______;
}
}
【正确答案】paint
repaint()
【你的答案】
本题分数2分
你的得分
修改分数
第5题某按钮的监视器方法actionPerformed()实现将文本区中的内容写入到文本文件myText.txt中。
public void actionPerformed(ActionEvent e){
try{
int n=txtFld.getText().length();
byte buffer[]=new byte[n];
buffer=txtFld.getText().getBytes();
FileOutputStream wf=new____("myText.txt");
wf.write(buffer,0,n);
____;
}catch(IOException ioe){txtFl
D.setText(ioe.toString()); }
}
}
【正确答案】FileOutputStream
wf.close()
【你的答案】
五、程序分析题(本大题共5小题,每小题4分,共20分)
第1题阅读下列程序,请写出该程序的输出结果。
public class A{
int m=5;static int n=3:
public static void main(String[]args){
A obj 1=new A();A obj2=new A();
obj1.m*=2;obj1.n*=4;obj2.m+=1;obj2.n+=6;
System.out.println("obj1.m="+obj1.m);
System.out.println("obj1.n="+obj1.n);
System.out.println("obj2.m="+obj2.m);
System.out.println("obj2.n="+obj2.n);
}
}
【正确答案】obj1.m=10(1分)
obj1.n=18(1分)
obj2.m=6(1分)
obj2.n=18(1分)
【你的答案】
本题分数4分
你的得分
修改分数
第2题阅读下列程序,请写出该程序的输出结果。
class Test33{
static int merger(int[]a,int[]b,int[]c){
int i=0,j=0,k=0;
while(iif(a[i]
}
while(iwhile(j
return k;
}
public static void main(String[]args){
int a[]={3,6,9}; int b[]={1,2,5};
int[]c=new int[100];int p=merger(a,b,c);
for(int k=0;k
System.out.print(c[k]+(k<p-1?
" ":
"\n"));
}
}
【正确答案】1 2 3 5 6 9(4分)
【你的答案】
本题分数4分
你的得分
修改分数
第3题阅渎下列程序,请写出该程序的功能。
import java.awt.*; import javax.swing.*;
import java.applet.*; import java.awt.event.*;
public class Class 1 extends Applet implements ActionListener{
JTextField Text1=new JTextField(5);
JTextField Text2=new JTextField(5);
JTextField Text3=new JTextField(5);
JLabel Label1=new JLabel("Please input three numbers:
");
JLabel Label2=new JLabel(" ");
JButton but=new JButton("Start!
");
public void init() {
setLayout(new GridLayout(6,1));add(Label1);
add(Text1);add(Text2);add(Text3);
add(but);add(Label2);
Label2.setFont(new Font("Courier",1,20));
but.addActionListener(this);
}
public void actionPerformed(ActionEvent e){
int a,b,c;
a=Integer.parseInt(Text1.getText());
b=Integer.parseInt(Text2.getText());
c=Integer.parseInt(Text3.getText());
if(a+bLabel2.setForeground(Color.red);
Label2.setFont(new Font("Courier",1,24));
Label2.setText("No.");
}else{
Label2.setForeground(Color.blue);
Label2.setFont(new Font("Courier",2,24));
Label2.setText("Yes.");
}
}
}
【正确答案】在文本框中输入3个数字(1分),单击“Start”按钮(1分),如果该3个数字是能做为三角形的边长,则输出“Yes.”(1分),否则输出“No.”(1分)。
【你的答案】
本题分数4分
你的得分
修改分数
第4题阅读下列程序,请写出该程序的功能。
import javax.swing.*;import java.awt.*;import java.awt.event.*;
class MyScrollBar extends JScrollBar{
public MyScrollBar(int init,int len,int low,int high){
super(JScrollBar.HORIZONTAL,init,len,low,high);
}
public Dimension getPreferredSize(){
return new Dimension(125,20);
}
}
class MyWindow extends JFrame implements AdjustmentListener{
private JTextField text;
MyWindow(String s){
super(s);
MyScrollBar tempBar=new MyScrollBar(10,10,0,255);
Container con=this.getContentPane();
con.setLayout(new GridLayout(2,1));
this.setSize(250,100);this.setLocation