2008年全国自考Java语言程序设计(一)真题及答案.doc
《2008年全国自考Java语言程序设计(一)真题及答案.doc》由会员分享,可在线阅读,更多相关《2008年全国自考Java语言程序设计(一)真题及答案.doc(37页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、更多优质自考资料尽在百度贴吧自考乐园俱乐部(2008年全国自考Java语言程序设计(一)真题及答案窗体顶端一、单项选择题(本大题共10小题,每小题1分,共10分) 在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。1.下述字符组合不能作为Java程序标识符的是【】 (1分)A:Aa12B:大xC:y小D:5x2.以下程序代码的输出的结果是【】 int x=53; System.out.println(1.0+x/2); (1分)A:27.0B:27.5C:1.026D:1.026.53. (1分)A:x、y和s都是成员变量B:x是实例变量
2、、y是类变量、s是局部变量C:x和y是实例变量、s是参数D:x、y和s都是实例变量4.需要分析字符串,并将字符串分解成可被独立使用的单词,可使用java.util包中的类是【】 (1分)A:StringB:StringBufferC:StringTokenizerD:stringTokenizer5.要为程序的子窗口设定一个由字符串s指定的名字,可以采用的代码是【】 (1分)A:JFrame(s)B:window(s)C:new JFrame(s)D:super(s)6.以下关于菜单的叙述中,正确的是【】 (1分)A:菜单分三级定义,最高一级的是菜单条,菜单条中放菜单,菜单中放菜单项B:菜单分
3、三级定义,最高一级的是菜单,菜单中放菜单条,菜单条中放菜单项C:菜单分两级定义,最高一级的是菜单,菜单中放菜单项D:菜单分两级定义,最高一级的是菜单条,菜单条中放菜单项7.以下所述内容全部是字型要素的是【】 (1分)A:字体、字形和大小B:字体、风格和字号C:字形、风格和字号D:字形、颜色和字号8.用Thread子类实现多线程的步骤顺序是【】 (1分)A:声明Thread类的子类,创建Thread子类的实例,让线程调用start()方法B:声明Thread类的子类,在子类中重新定义run()方法,创建Thread子类的实例C:创建Thread子类的实例,让线程调用start()方法D:声明Th
4、read类的子类,在子类中重新定义run()方法,创建Thread子类的实例,让线程调用start()方法9.为16位Unicode字符流提供读和写操作支持的类分别是【】 (1分)A:FileInputStream类和FileOutputStream类B:InputStream类和OutputStream类C:FileReader类和FileWriter类D:File_Reader类和File_Writer类10.能利用对象提供的方法获得流对象和实现网络连接的是【】 (1分)A:URLConnection对象B:URL对象C:InetAddress对象D:TCP/IP对象二、填空题(本大题共1
5、0小题,每小题2分,共20分)请在每小题的空格中填上正确答案。错填、不填均无分。1.一个小应用程序必须定义成一个。 (2分)2.用条件运算符构造一个表达式:goal等于10时,表达式的值为对了!,否则,表达式的值为错了!。这个表达式是。 (2分)3.类是对一组相同对象的描述,类概括了同类对象的共有性质:。 (2分)4.设有数组a和b的定义如下: int a=1,2,3;int b=4,5,6 执行以下代码a=b;,除了完成赋值操作之外,引起系统额外要做的工作是。 (2分)5.布局使容器的多个组件拥有同一个显示空间,某一时刻只能显示一个组件。 (2分)6.Java语言为处理鼠标事件提供两个接口:
6、接口和MouseMotionListener接口。 (2分)7.某个绘图方法设置成异或模式绘图,并用黄色作为异或模式设定的绘图颜色。如果当时背景色为红色,并用红色绘制线段,则线段的实际颜色是。 (2分)8.程序员用Java语言编写多线程应用程序,程序员能控制的关键性工作有两个方面:一是编写线程的方法;二是建立线程实例。 (2分)9.BufferedWriter类是提供缓冲式输出的类。程序需要先创建对象,再利用这个对象创建BufferedWriter对象。 (2分)10.在Java语言中,客户端使用的套接字类是。 (2分)三、简答题(本大题共6小题,每小题3分,共18分)1.请写出表示条件x=2
7、与y=3有且只有一个成立的Java表达式。 (3分)2.如果类Student是类Person的子类,类Undergraduate是类Student的子类,请指出以下代码行中哪些是不合法的。 Person p1=new Student(); Person p2=new Undergraduate(); Student s1=new Person(); Student s2=new Undergraduate(); Undergraduate ug1=new Person(); Undergraduate ug2=new Student(); Object ob=new Student(); (3
8、分)3.请写出程序处理文本框输入结束事件(回车)添加监视器的方法,以及监视器类必须实现的接口方法。 (3分)4.请写出一条语句,能够绘制一条从点(20,30)开始,长为100像素的水平线段。设调用的对象是类型为Graphics的g。 (3分)5.某Java程序要使用文件输入输出流,请写出该程序所需要的import语句。 (3分)6.JDBC是Java程序与数据库连接的API,请写出JDBC能做的三件事情。 (3分)四、程序填空题(本大题共5小题,每空2分,共20分)1.方法int maxDigit(int n)的功能是找出十进制整数n各位中最大的一位数字。例如,n=23765,该方法的返回值是
9、7。 static int maxDingit(int n) int c=0,d; while(n0) d=; if(dc)c=d; n/=10; ; (4分)2.某程序的界面包含一个文本区text1、一个文本框text2和一个按钮button。实现在文本区中输入整数序列后,点击按钮,程序响应按钮事件,累计文本区输入的整数序列,并将总和输出在文本框中。这里给出的是其中相应按钮事件的方法。 public void actionPerformed(ActionEvent e) int sum; if(e. getSource()=button) String s=text1.;/获取text1中的
10、信息 String Tokenizer fenxi=new String Tokenizer(s,n); int n=fenxi.countTokens(); double a=new doublen; for(int i=0;in;i+) String temp=fenxi.nextToken(); ai=Double.valueOf(temp).doubleValue(); sum=0, for(int i=0;in;i+) ; text2.setText( +sum);/刷新显示。 (4分)3.以下是生成菜单项对象,以及菜单项选择事件处理方法的部分代码。要求当菜单项singingItem
11、被选中时,在文本框text中输出唱歌菜单项被选中!的字样。 singingItem=new=(“唱歌”);/生成菜单对象 public void actionPerformed(ActionEvent e) if(e getSource()=singingItem) text.set Text(e.()+“菜单项被选中!”); (4分)4.某小应用程序实现幻灯片放映。小应用程序的init()方法将幻灯片读入数组中存储和注册鼠标监视器。程序运行时,单击鼠标,就顺序变换放映幻灯片的序号。这里给出的是其中的paint()方法和mousePressed()方法。 final int number=30
12、;/假定幻灯片有30张 int count=0; Imagepic=new Imagenumber; public void paint(gc) if(piccount)!=null) gc.drawImage(piccount,10,10,piccount.getWidth(this), piccount.getHeight(this),this); public void mousePressed(MouseEvent e) count=(count+1)%number;/循环逐张显示 ; (4分)5.以下定义的类shareDataManager用于管理多个线程共享数据data。一些线程要
13、减少data,另一些线程要增加data。由于data不可以是负值,修改data的方法对这些线程来说不仅要互斥,还要同步。类提供一个方法modiData()供修改data的线程调用,该方法在data修改结束后,应通知其它等待进入这个方法的线程。 class ShareDataManager int data=0; void modiData(int dalta) if(delta=0) data+=delta; else while(datadelta) trySystem.out println(“发生等待!”); wait(); catch(InterruptedExceptione) da
14、ta-=delta; ; ShareDataManager(int it it Data)data=initData; (4分)五、程序分析题(本大题共5小题,每小题4分,共20分)1.阅读下列程序,请写出该程序的输出结果。 import Java applet.*;import java.awt.*; class Point int x,y, Point(int xx,int yy)x=xx;y=yy; Point(Point p)x=p.x;y=p.y; void m(int dx,int dy)(x+=dx;y+=dy;) class Circle extends Point int r
15、; Circle(Point p,int rr)super(p);r=rr; float c()return 3.14f*2.0f*r; float a()return 3.14f*r*r; public class sample extends Applet Circle yuan,Pint d; public void init()d=new Pint(2,5);yuan=new Circld(d,10); public void paint(Graphics g) g.drawString(yuan Circle+(int)(yuan.c()*100.0)/100.0,5,20); g.
16、drawString(yuan Area+(int)(yuan.a()*100.0)/100.0,5,40); (4分)2. (4分)3.阅读下列程序,请写出该程序的功能。 import java applet*;import javax swing*,import java awt event*; public class Class1 extends Applet implements ActionListerer JTextField text1,text2; public void init() text1=new JTextField(10);text2=new JTextField
17、(10); setSize(200,100);add(text1);add(text2); text1 addActionListerer(this); public void actionPerformed(Action Evente) long n; if(e.getSource()=text1) n=Long.parseLong(text1.get Text(); text2.setText(String valueOf(n*n); (4分)4.阅读以下程序,请写出该程序的功能。 import javax swing.*;import java awt.*;import java.awt
18、.event.*; class MyScrollBar extends JscrollBar public MyScrollBar(int init,int len,int low,int high) super(JScrollBar.HORIZONTAL,init,len,low,high); class MyWindow extends JFrame implements AdjustmentListerer private JTextField text; MyWindow(String s) super(s); MyScrollBar myBar=new MyScrollBar(10,
19、10,0,255); Container con=this.gerContentPane(); con.setLayout(new GridLayout(2,1); this.setSize(200,100); this.setLocation(100,100); myBar.addAdjustmentListerer(this); text=new JTextField( ,20); con.add(text);con.add(myBar); this.setVisible(true); public void adjustment ValueChanged(AdjustmentEvent
20、e) MyScrollBar myBar=(MyScrollBar)e.getAdjustable(); text.setText( +myBar.getValue(); public class Class1 public static void main(Stringargs) MyWindow myWindow=new MyWindow(text5_4); (4分)5.小应用程序创建一个线程。例子使用容器类方法getGraphics()获得Graphics对象,给线程作为画笔使用。请写出该程序中这个线程的工作内容。 import java.applet.*;import java awt
21、.*; public class Class1 extends java.applet.Applet implements Runnable Thread redBall;Graphics redPen; int rx=0,ry=0; public void init() setSize(250,200); redBall=new Thread(this); redPen=getGraphicsp(); redPen.setColor(Color.red); setBackground(Color.gray); public void start()redBall.start(); publi
22、c void run() while(true) if(Thread.current Thread()=redBall) rx=(int)(80*Math.random(); ry=(int)(80*Math.random(); red Pen.setColor(Color.red); red Pen.fillOval(100+rx,100+ry,10,10); try(redBall.sleep(500); catch(InterruptedException e) redPen.setColor(Color.gray); reden.fillOval(100+rx,100+ry,10,10
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2008 全国 自考 Java 语言程序设计 答案
限制150内