




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、2010年全国自考Java语言程序设计(一)模拟试卷(一)及答案窗体顶端一、单项选择题(本大题共10小题,每小题1分,共10分) 在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。1.下列正确的句子是() (1分)A:float 3.14;B:byte i=225;C:int k=33L;D:int p;2.当使用FileInputStream类中的read()方法时,如果没有读入一个字节数据时,返回值为() A:0B:-1C:trueD:false3.能够支持 javadoc 命令的文档注释形式是() (1分)A:/*./B:/*.*/
2、C:/D:/*.*/4.以下程序代码的输出结果是() int x=100; System.out.println(5.5+x/8); (1分)A:18B:17.5C:9.5D:5.5125.当用户在文件对话框中选择了文件并按下了“打开/保存”按钮后,程序可利用一个方法取得文件对象,并针对这个对象使用getName()取得文件名,使用getPath()取得文件的路径,则这个方法是() (1分)A:getFile()B:getSelectFile()C:getSelectedFile()D:getDescription()6.在 Java 中,表示换行符的转义字符是() (1分)A:AB:BC:C
3、D:D7.一个实现Runnabel接口的类必须要实现的方法是() (1分)A:start()B:run()C:sleep()D:init()8.下列有关Java的叙述错误的是() (1分)A:强类型语言B:与平台无关C:可以使用汉字变量名D:不检查数组下标越界9.下列有关数组的叙述错误的是() (1分)A:数组是将一组相同类型的数据顺序存储,组成一种复合数据类型B:在Java语言中,数组是一种引用类型,数组名如同对象名一样,是一种引用C:对于多维数组,从最高维开始,可以对每一维分配不等长的空间D:在Java语言中,数组元素可以互相赋值,而数组名不能直接赋值10.当线程A使用某个对象,而此对象又
4、需要线程B修改后才能符合A线程的需要,这时线程A就要等待线程B完成修改工作,这种现象称为() (1分)A:线程的同步B:线程的互斥C:线程的调度D:线程的就绪二、填空题(本大题共10小题,每小题2分,共20分)请在每小题的空格中填上正确答案。错填、不填均无分。1.在switch 语句中,通过语句退出 switch 语句,使程序从整个 switch 语句后面的第一条语句处开始执行。 (2分)2.在 Java 中所有实现的多维数组,实际上是由一维数组构成的。 (2分)3.为实现线程同步,Java语言提供了notify()、notifyAll()和三个方法供线程在临界段中使用。 (2分)4.Java
5、语言使用Unicode字符集,共有个字符。 (2分)5.闰年的条件是:每4年一个闰年,但每100年少一个闰年,每400年又增加一个闰年。如果年份用整数类型变量y表示,则y年是闰年的条件用逻辑表达式可描述为。 (2分)6.Java语言中,逻辑类型用关键字标识,也称布尔类型。 (2分)7.Java程序能实现多线程并行执行,为了让一个线程暂停执行,其他线程有机会被执行,可对要暂停的线程执行方法。 (2分)8.Java应用程序和小应用程序都由一个或多个扩展名为的文件组成。 (2分)9.将显示区域按行、列划分成一个个大小相等的格子,组件依次放入这些格子中。 (2分)10.键盘事件的接口是。 (2分)三、
6、程序填空题(本大题共5小题,每空2分,共20分)1.下面小应用程序启动后自动播放一个声音文件“1.wav”。 import java.applet.*; public class Class3001 extends Applet public void start() =getAudioClip(getCodeBase(),1.wav); clip.; (2分)2.下列程序的功能是每隔一秒钟输出一个字符串“Hello!”。 public class C3101 implements Runnable public static void main(String args) C3101 t=ne
7、w C3101(); Thread tt=new Thread(t); tt.start(); public void run() for(;) try ; catch() System.out.println(Hello); (2分)3.设计一个JFrame窗口,窗口中心有一个文本区。另有4个菜单,每个菜单都有菜单项,每个菜单项都对应有快捷键,选择某个菜单项时,窗口中心的文本区显示相应信息。 import java.awt.*; import java.awt.event.*; import javax.swing.*; public class C2902 implements Actio
8、nListener JTextField text=new JTextField(20); String t=文件,编辑,格式,帮助; Menu menu=new Menu4; String s=打开,保存,复制,粘贴,字体,段落,小助手,关于; MenuItem jmi=new MenuItem8; C2902() JFrame myWin=new JFrame(Ex0606); myWin.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); Container con=myWin.getContentPane(); con.add(text,Ce
9、nter); text.setEditable(false); myWin.setMenuBar(jmb); int i; for(i=0;i4;i+)/生成四个菜单 menui=new Menu(ti); jmb.add(menui); for(i=0;i=360) redSeta=0; x=(int)(80.0*Math.cos(3./180.0*redSeta); y=(int)(80.0*Math.sin(3./180.0*redSeta); redPen.setColor(Color.red); redPen.fillOval(100+x,100+y,10,10); try redB
10、all.sleep(20); catch(InterruptedException e) else if (Thread.currentThread()=blueBall) x=(int)(80.0*Math.cos(3./180.0*blueSeta); y=(int)(80.0*Math.sin(3./180.0*blueSeta); bluePen.setColor(Color.gray); bluePen.fillOval(150+x,100+y,10,10); blueSeta-=3; if(blueSeta=-360) blueSeta=0; x=(int)(80.0*Math.c
11、os(3./180.0*blueSeta); y=(int)(80.0*Math.sin(3./180.0*blueSeta); bluePen.setColor(Color.blue); bluePen.fillOval(150+x,100+y,10,10); try blueBall.sleep(40); catch(InterruptedException e) (4分)3.阅读下列程序,写出运行结果。 public class Class3205 public static void main(String args) String str1=abc; String str2=Abc;
12、 String str3=abc; String str4=new String(abc); System.out.println(str1=str2); System.out.println(str1.equals(str2); System.out.println(str1=str3); System.out.println(str1.equals(str3); System.out.println(str1=str4); System.out.println(str1.equals(str4); (4分)4.阅读下列程序,写出程序功能。 import java.awt.*; import
13、 java.awt.event.*; import javax.swing.*; public class Class3505 implements AdjustmentListener JScrollBar js; JLabel label; int size=20; public Class3505() JFrame myWin=new JFrame(Class3505); myWin.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); myWin.setBounds(200,200,400,400); Container con=myWin.g
14、etContentPane(); js=new JScrollBar(JScrollBar.HORIZONTAL,20,10,1,210); js.setSize(new Dimension(395,50); js.addAdjustmentListener(this); con.add(js); label=new JLabel(Class3505); con.add(label); myWin.setVisible(true); public void adjustmentValueChanged(AdjustmentEvent e) size=e.getValue(); Font f=n
15、ew Font(label.getFont().getName(), label.getFont().getStyle(),size); label.setFont(f); public static void main(Stringargs) new Class3505(); (4分)5.阅读下面程序,写出程序运行结果。 class printer synchronized void printchar(char ch) for (int i=1;i=3;i+)System.out.print(ch); System.out.println(); class printerThread ex
16、tends Thread printer ptr; char ch; printerThread(printer ptr,char ch) this.ptr=ptr; this.ch=ch; public void run() for (int i=1; i=3;i+)ptr.printchar(ch); public class Class3605 public static void main(String args) printer ptr=new printer(); printerThread pt1=new printerThread(ptr,A); printerThread p
17、t2=new printerThread(ptr,B); pt1.start(); pt2.start(); (4分)五、程序设计题(本大题共2小题,每小题6分,共12分)1.编写一个小应用程序,在小应用程序中有两个线程,一个负责模仿圆转运动,另一个模仿椭圆运动。已给出部分代码,请完成程序。 import java.awt.*; import java.applet.*; public class Class3804 extends Applet implements Runnable Thread thread1,thread2; Graphics g; public void init()
18、 setSize(500,500); setBackground(Color.gray); g=getGraphics(); g.setColor(Color.red); g.setXORMode(Color.blue); thread1=new Thread(this); thread2=new Thread(this); public void start() thread1.start(); thread2.start(); public void run() int x=0,y=0; while(true) /这里是你要编写的代码 (6分)2.编写一个方法hex3705(),要求将一个
19、以字符串(如有字母用大写)形式表示的十六进制数转换十进制正整数,其中字符串为方法参数,正整数为返回值。 (6分)六、简答题(本大题共6小题,每小题3分,共18分)1.请写出:提供缓冲式输出的类、采用缓冲输出时如果想立即写入文件就调用的方法。 (3分)2.在以下类的声明中,指出哪些是错误的以及错误的原因? class Class22 extends Class2201,Class2202. public abstract class Class22. abstract final class Class22. abstract public class Class22. public abstr
20、act class String. public final class Class22 extends implement interface1. (3分)3.文件随机访问应该利用什么类来实现?创建此类对象的代码应该能捕获什么类型的异常? (3分)4.用一个Java语句完成下面的要求: 先将整型变量a的值加1,再把它加到变量b中。 (3分)5.用一个Java语句完成下面的要求: 先把变量a与b的差赋值给变量c,再把变量b的值减1。 (3分)6.请写一条语句,实现用预定的颜色填充一个突出显示的矩形色块,其中矩形左上角坐标为(200,100),右下角坐标为(400,500),调用的是类型为Gra
21、phics的g对象。 (3分)窗体底端参考答案一、单项选择题 (本大题共10小题,每小题1分,共10分) 在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。1:参考答案:D参考解析:(P71)声明二维数组的一般形式有以下3种: 类型 数组名 类型 数组名 类型 数组名 试题内容:下列正确的句子是()A:float 3.14;B:byte i=225;C:int k=33L;D:int p;2:参考答案:B参考解析:(P176)read()方法的返回值类型为int型,用-1表示流在读之前已结束。试题内容:当使用FileInputStream
22、类中的read()方法时,如果没有读入一个字节数据时,返回值为()A:0B:-1C:trueD:false3:参考答案:D参考解析:(P6)/*/这种注释是文档注释,文档注释能被实用程序javadoc接受,由它能自动生成程序的HTML文档。试题内容:能够支持 javadoc 命令的文档注释形式是()A:/*./B:/*.*/C:/D:/*.*/4:参考答案:B参考解析:(P14)Java程序中的类只能继承一个类,这种继承称为单继承。Java语言虽不允许一个类继承多个类,但允许一个类实现多个接口。接口有与类相似的基本形式。试题内容:以下程序代码的输出结果是()int x=100;System.o
23、ut.println(5.5+x/8);A:18B:17.5C:9.5D:5.5125:参考答案:C参考解析:(P182)试题内容:当用户在文件对话框中选择了文件并按下了“打开/保存”按钮后,程序可利用一个方法取得文件对象,并针对这个对象使用getName()取得文件名,使用getPath()取得文件的路径,则这个方法是()A:getFile()B:getSelectFile()C:getSelectedFile()D:getDescription()6:参考答案:A参考解析:(P9)试题内容:在 Java 中,表示换行符的转义字符是() A:AB:BC:CD:D7:参考答案:B参考解析:(P
24、163)本题考核知识点是Runnable接口的使用。实现一个接口必须实现接口中的所有方法,而Runnable接口只有一个方法run()。试题内容:一个实现Runnabel接口的类必须要实现的方法是()A:start()B:run()C:sleep()D:init()8:参考答案:D参考解析:(P3)试题内容:下列有关Java的叙述错误的是()A:强类型语言B:与平台无关C:可以使用汉字变量名D:不检查数组下标越界9:参考答案:D参考解析:(P70)数组是一种引用类型,一个数组名在不同时间可引用不同的数组,数组名之间可以赋值。试题内容:下列有关数组的叙述错误的是()A:数组是将一组相同类型的数据
25、顺序存储,组成一种复合数据类型B:在Java语言中,数组是一种引用类型,数组名如同对象名一样,是一种引用C:对于多维数组,从最高维开始,可以对每一维分配不等长的空间D:在Java语言中,数组元素可以互相赋值,而数组名不能直接赋值10:参考答案:A参考解析:(P168)试题内容:当线程A使用某个对象,而此对象又需要线程B修改后才能符合A线程的需要,这时线程A就要等待线程B完成修改工作,这种现象称为()A:线程的同步B:线程的互斥C:线程的调度D:线程的就绪二、填空题 (本大题共10小题,每小题2分,共20分)请在每小题的空格中填上正确答案。错填、不填均无分。1:参考答案:(P23)break试题
26、内容:在switch 语句中,通过_语句退出 switch 语句,使程序从整个 switch 语句后面的第一条语句处开始执行。2:参考答案:(P71)数组的数组试题内容:在 Java 中所有实现的多维数组,实际上是由一维数组构成的_。3:参考答案:(P168)wait()试题内容:为实现线程同步,Java语言提供了notify()、notifyAll()和_三个方法供线程在临界段中使用。4:参考答案:(P7)65536试题内容:Java语言使用Unicode字符集,共有_个字符。5:参考答案:(P16)(y%4=0&y%100!=0)|y%400=0试题内容:闰年的条件是:每4年一个闰年,但每
27、100年少一个闰年,每400年又增加一个闰年。如果年份用整数类型变量y表示,则y年是闰年的条件用逻辑表达式可描述为_。6:参考答案:(P8)Boolean试题内容:Java语言中,逻辑类型用关键字_标识,也称布尔类型。7:参考答案:(P161)sleep()试题内容:Java程序能实现多线程并行执行,为了让一个线程暂停执行,其他线程有机会被执行,可对要暂停的线程执行_方法。8:参考答案:(P11).class 解析Java程序的扩展名为“.class”,源程序的扩展名为“.java”。试题内容:Java应用程序和小应用程序都由一个或多个扩展名为_的文件组成。9:参考答案:(P98)GridLa
28、yout 解析常用的布局类:FlowLayout为依次放置组件;BorderLayout将组件放置在边界上; CardLayout将组件像扑克牌一样叠放,而每次只能显示其中的一个组件;GridLayout将显示区域按行、列划分成一个个大小相等的格子,组件依次放入这些格子中;GridBagLayout能进行更精细的位置控制。试题内容:_将显示区域按行、列划分成一个个大小相等的格子,组件依次放入这些格子中。10:参考答案:(P132)KeyListener 解析键盘事件的接口是KeyListener,注册键盘事件监视器的方法是addKeyListener(监视器)。实现KeyListener接口的
29、方法有3个: (1)keyPressed(KeyEvent e),键盘上某个键被按下。 (2)keyReleased(KeyEvent e),键盘上某下键被按下后,又释放。 (3)keyTyped(KeyEvent e),keyPressed和keyReleased两方法的组合试题内容:键盘事件的接口是_。三、程序填空题 (本大题共5小题,每空2分,共20分)1:参考答案:AudioClip clip play(),试题内容:下面小应用程序启动后自动播放一个声音文件“1.wav”。import java.applet.*;public class Class3001 extends Apple
30、t public void start()_=getAudioClip(getCodeBase(),1.wav);clip._;2:参考答案:sleep(1000) InterruptedException e ,试题内容:下列程序的功能是每隔一秒钟输出一个字符串“Hello!”。public class C3101 implements Runnablepublic static void main(String args)C3101 t=new C3101();Thread tt=new Thread(t);tt.start();public void run()for(;) try_ ;
31、catch(_)System.out.println(Hello);3:参考答案:MenuBar jmb=new MenuBar(); setShortcut,试题内容:设计一个JFrame窗口,窗口中心有一个文本区。另有4个菜单,每个菜单都有菜单项,每个菜单项都对应有快捷键,选择某个菜单项时,窗口中心的文本区显示相应信息。import java.awt.*;import java.awt.event.*;import javax.swing.*;public class C2902 implements ActionListener_JTextField text=new JTextFiel
32、d(20);String t=文件,编辑,格式,帮助;Menu menu=new Menu4;String s=打开,保存,复制,粘贴,字体,段落,小助手,关于;MenuItem jmi=new MenuItem8;C2902()JFrame myWin=new JFrame(Ex0606);myWin.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);Container con=myWin.getContentPane();con.add(text,Center);text.setEditable(false);myWin.setMenuBar(j
33、mb);int i;for(i=0;i4;i+)/生成四个菜单menui=new Menu(ti);jmb.add(menui);for(i=0;i8;i+)/每个菜单中放两个菜单项jmii=new MenuItem(si);menui/2.add(jmii);jmii.addActionListener(this);jmii._(new MenuShortcut(65+i);/设快捷键myWin.setBounds(300,200,400,200);myWin.setVisible(true);public void actionPerformed(ActionEvent e)text.se
34、tText(你选择了:+e.getActionCommand()+菜单项.);public static void main(String args)new C2902();4:参考答案:paintComponent(Graphics g); g.setColor(Color.RED);,试题内容:下面应用程序,绘制一个红色五角星。请完成程序。import java.awt.*;import javax.swing.*;class MyPanel extends JPanelpublic void_int r=100;int x1=100,x2=(int)(r*(1-Math.cos(18*M
35、ath.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
36、.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);public class C3002 extends JFrameC3002()super(C3002);setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);getContentPane().add(new MyPanel();setSize(210,242);setVi
37、sible(true);public static void main(String args)new C3002();5:参考答案:Thread t=new Thread(new Hello(); i+=360) redSeta=0;x=(int)(80.0*Math.cos(3./180.0*redSeta);y=(int)(80.0*Math.sin(3./180.0*redSeta);redPen.setColor(Color.red);redPen.fillOval(100+x,100+y,10,10);try redBall.sleep(20);catch(InterruptedE
38、xception e)else if (Thread.currentThread()=blueBall)x=(int)(80.0*Math.cos(3./180.0*blueSeta);y=(int)(80.0*Math.sin(3./180.0*blueSeta);bluePen.setColor(Color.gray);bluePen.fillOval(150+x,100+y,10,10);blueSeta-=3;if(blueSeta=-360) blueSeta=0;x=(int)(80.0*Math.cos(3./180.0*blueSeta);y=(int)(80.0*Math.s
39、in(3./180.0*blueSeta);bluePen.setColor(Color.blue);bluePen.fillOval(150+x,100+y,10,10);try blueBall.sleep(40);catch(InterruptedException e)3:参考答案:(P75)运行结果: false false true true false true 解析str1.equals(str2)是str1t和str2两个字符串的内容比较是否相等,str1=str2表示str1和str2两个字符串是 否引用同一个对象。为了比较基本数据类型变量的值是否相等是使用“=”,但这个办
40、法并不适用于String对象(或者 其他任何对象)。对于str1和str3是引用同一个字符串常量,其内容当然相同。而str1和str4内容虽然相同但引用的不 是同一对象,这是因为str1引用的是编译时就确定的字符串常量,str4引用的是程序运行时才创建的对象。试题内容:阅读下列程序,写出运行结果。public class Class3205public static void main(String args)String str1=abc;String str2=Abc;String str3=abc;String str4=new String(abc);System.out.println(str1=str2);System.out.println(str1.equals(str2);System.out.println(str1=str3);System.out.println(str1.equals(str3);System.out.println(str1=str4);System.out.println(str1.equals(str4);4:参考答案:程序功能:应用程序窗口中产生一个水平滚动条,下面是一个标签,当拖动滚动条滑块时,标签里的文字的大小随着 滑块的移动而变化。文字字号的范围是12
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 农业生产成本核算管理指南
- 跨境电商平台跨境支付与结算方式报告
- 三农村疫情防控与公共卫生应急方案
- 商务谈判技巧与实践培训
- 医药行业智能化医疗器械临床试验与监管创新方案
- 企业绩效管理实践案例分享
- 关于申请项目资金支持的详细报告书
- 青岛2025年山东青岛市卫生健康委员会直属事业单位校园招聘807人笔试历年参考题库附带答案详解
- 达州四川达州市达川区人民医院招聘临床医学类博士研究生及紧缺专业规培生硕士研究生笔试历年参考题库附带答案详解
- 舟山浙江舟山市普陀区发改局招聘编外人员笔试历年参考题库附带答案详解
- (一模)哈三中2025届高三第一次模拟考试 语文试题(含答案)
- 2025年中考英语第一次模拟试卷01(广州专用)(解析版)
- 2025年甘肃能化金昌能源化工开发有限公司社会招聘35人笔试参考题库附带答案详解
- 2025年云南中烟工业有限责任公司招聘(430人)笔试参考题库附带答案详解
- 四级消防设施操作员(监控)考核题库与答案
- 《我在长大》-完整版PPT
- 人身损害与疾病因果关系判定指南
- 招收士官学历专业审定表
- DB44∕T 1517-2015 物业服务 办公楼服务规范
- 人教鄂教版科学六年级下册全册教案
- 新苏教版五年级科学下册2.5《生物的启示》教学课件
评论
0/150
提交评论