自考Java语言程序设计一试题及答案资料.docx
- 文档编号:10476100
- 上传时间:2023-02-13
- 格式:DOCX
- 页数:19
- 大小:25.37KB
自考Java语言程序设计一试题及答案资料.docx
《自考Java语言程序设计一试题及答案资料.docx》由会员分享,可在线阅读,更多相关《自考Java语言程序设计一试题及答案资料.docx(19页珍藏版)》请在冰豆网上搜索。
自考Java语言程序设计一试题及答案资料
绝密★考试结束前
全国2014年4月高等教育自学考试
Java语言程序设计
(一)试题及答案
课程代码:
04747
请考生按规定用笔将所有试题的答案涂、写在答题纸上。
选择题部分
注意事项:
1.答题前,考生务必将自己的考试课程名称、姓名、准考证号用黑色字迹的签字笔或钢笔填写在答题纸规定的位置上。
2.每小题选出答案后,用2B铅笔把答题纸上对应题目的答案标号涂黑。
如需改动,用橡皮擦干净后,再选涂其他答案标号。
不能答在试题卷上。
一、单项选择题(本大题共10小题,每小题1分,共10分)
在每小题列出的四个备选项中只有一个是符合题目要求的,请将其选出并将“答题纸”的相应代码涂黑。
错涂、多涂或未涂均无分。
1.以下标识符中,不是Java语言关键字的是A
A.waitB.new
C.longD.switch
2.以下数据类型转换中,必须进行强制类型转换的是A高到低就需要强制
A.int→charB.short→long
C.float→doubleD.byte→int
3.以下供选择的概念中,属于面向对象语言重要概念和机制之一的是C
A.函数调用B.模块
C.继承D.结构化
4.以下Java程序代码中,能正确创建数组的是C
A.intmyArray[];myArray[]=newint[5];
B.intmyArray[]=newmy(5);
C.int[]myArray={1,2,3,4,5};
D.intmyArray[5]={1,2,3,4,5};
5.某Java程序的类A要利用Swing创建框架窗口,则A需要继承的类是B
A.JWindowB.JFrame
C.JDialogD.JApplet
6.MouseMotionListener接口能处理的鼠标事件是D
7.A.按下鼠标键B.鼠标点击
C.鼠标进入D.鼠标移动
7.以下术语中,属于文字字型风格属性的是C
A.颜色B.宋体
C.斜体D.字号
8.以下能作为表示线程优先级的数值,并且级别最低的是B
A.0B.1
C.15D.16
9.某Java程序用javax.swing包中的类JFileChooser来实现打开和保存文件对话框。
该程序通过文件对话框首先获得的信息是D
A.文件长度B.文件路径
C.文件内容D.文件对象
10.在编写访问数据库的Java程序时,ResultSet对象的作用是B
A.用来表示与数据库的连接B.存储查询结果
C.在指定的连接中处理SQL语句D.建立新数据库连接
非选择题部分
注意事项:
用黑色字迹的签字笔或钢笔将答案写在答题纸上,不能答在试题卷上。
二、填空题(本大题共10小题,每空2分,共20分)
11.类Testll经Java编译程序编译后,产生的文件是__Test11.class____。
12.表达式“45&20”的十进制值是__4_。
13.如果类A继承和扩展类B,则子类A和超类B之间的关系是___is-a__。
14.Java语言提供的用于处理不可改变的字符串类是____。
String类
15.要使得已注册的按钮对象暂时不响应事件,需使用的方法是______。
setEnabled()
16.一个水平滚动条对象的初始值是150,滑块的宽是8个像素,表示的范围是[0,300]。
创建这样的滚动条对象时,提供的最后2个参数依次是______。
0,300
17.某应用程序定义的类C17是JPanel的子类,在类C17的对象中需要绘图,则在类C17中应重写的方法是______。
paintComponent()
18.当线程进入临界段后,发现需要与别的线程进行同步,则要调用的方法是______。
wait()
19.某程序想要随机读写字符文件,能支持这个要求的类是______。
RandomAccessFile
20.某应用程序已经声明了InetAddress对象addr,现要用域名创建addr对象,能实现这样要求的代码是addr=InetAddress.(“”)______;。
addr=InetAddress._getByName(“”)_
三、简答题(本大题共6小题,每小题3分,共18分)
21.已知变量n,请写出使用for语句计
算的代码。
答:
doubleS=0.0;for(inti=1;i 22.请写出接口体中可能包含的内容。 包括方法和属性 答: 包含常量定义和方法定义两部分。 23.请写出对事件对象作监视器注册的作用。 答: 事件对象作监视器注册后,系统才会把该对象上发生的事件通知到监视对象。 24.已知Graphics对象g,获得Graphics2D对象g2d,然后,用圆角长方形类创建对象circle,该对象的左上角坐标是(30,40),半径是50。 请写出实现以上要求的Java代码。 答: Graphics2Dg2d=(Graphics2D)g; RoundRectangle2Dcircle=newRoundRectangle2D.Double(30,40,100,100,100); 25.某程序希望用FileFilter类的子类为打开文件对话框设置文件筛选条件。 请写出设置此筛选条件要使用的类及相应的方法。 答: 使用的类为JFileChooser类,相应的方法是addChooserFileFilter()或者setFileFilter() 26.JDBC是Java程序与数据库连接的API。 请写出JDBC能做的三件事情。 创建数据库;查询数据;更新删除数据 答: 与某个数据库建立连接,向数据库发送SQL语句和处理数据库返回结果。 四、程序填空题(本大题共5小题,每空2分,共20分) 27.方法voidmoveOddFront(inta[])的功能是将数组a中的所有奇数都移到数组的前端,而把偶数放于所有奇数的后面,其方法是当发现是偶数时,就让该数留在原来位置,当发现是奇数时,就与前面的第一个偶数交换。 程序引入变量odd表示移动过程中遇到的奇数个数。 voidmoveOddFront(inta[]){ for(inti=0,odd=0;___i if(a[i]%2==1){ intt=a[odd];a[odd]=a[i];a[i]=t;____odd++__; } } 28.以下程序的界面包含一个文本区text和一个允许多选的列表list,列表的条目存于字符串数组sports[]中,当列表发生选择事件时,事件处理程序将这次选中的所有条目在文本区中输出。 这里给出的是其中处理列表事件的方法。 publicvoidvalueChanged(____ListenerSelectionEvent____e){ if(e.getSource()==list){ text.setText(null); inttempList[]=list.getSelectedIndices();∥获得选中索引表 for(inti=0;i text.append(sports[___tempList[i]___]+": 被选中\n"); } } 29.以下应用程序创建一个窗口,窗口内放置一个面板,在面板中显示一张图片和一段文字。 importjavax.swing.*;importjava.awt.*; publicclassTest29{ publicstaticvoidmain(String[]args){ MyFrameframe=newMyFrame(); } } classMyFrameextendsJFrame{ publicMyFrame(){ setTitle("Test29");setSize(300,200); Toolkittool=___getToolkit()___; Imageimg=tool.getImage("myPic2.jpg"); getContentPane().add(newMyPanel(img)); setVisible(true); } } classMyPanelextendsJPanel{ ImagemyImg; MyPanel(Imageimg){myImg=img;} publicvoidpaintComponent(Graphicsg){ if(myImg! =null)g.___drawImage___(myImg,100,30,this); g.drawString("我是一名自考生! ",100,140); } } 30.类ShareDataManager用于管理多个线程共享数据data,其中定义了一个供线程修改data的方法modiData()。 为了对data的修改操作保持完整,多线程在data上的操作有互斥要求;另外,限制线程对data的修改不能让data为负数,所以多线程在data上的操作还有同步要求。 以下是类ShareDataManager的定义。 classShareDataManager{ intdata; ShareDataManager(intinit){data=init;} synchronizedvoidmodiData(intdelta){ if(data+delta>=0){data+=delta; }else{ while(data+delta<0){ try{__wait()____} catch(InterruptedExceptione){} } data+=delta; } __notify()____; } } 31.某个缓冲式输出的示意程序的界面有一个文本框fileOut和一个文本区text,程序运行时,先在文本区中输入要存入文件的内容,接着在文本框中输入文件名并回车,则程序将文本区中的内容保存到指定的文件中。 以下是该程序中相应文本框文件名的输入事件的方法。 publicvoidactionPerformed(ActionEvente){ if(e.getSource()==fileOut){ try{ out=newBufferedWriter(new__FileWriter(fileOut.getText())____); out.___write(text.getText())___; out.flush();out.close();text.setText(null); }catch(FileNotFoundExceptionel){ System.out.print("文件没有找到! \n"); }catch(IOExceptionexp){ System.out.print("文件读写出错! \n"); } } } 五、程序分析题(本大题共5小题,每小题4分,共20分) 32.阅读下列程序,请写出该程序的输出结果。 classMother{ publicvoiclmethodl(){ System.out.println("CallMother'smethodl()"); } publicvoidmethod2(){ System.out.println("CallMother'smethod2()");methodl(); } } classGirlextendsMother{ publicvoidmethodl(){ System.out.println("CallGirl'smethodl()"); } publicstaticvoidmain(Stringargs[]){ Girlg=newGirl();g.method2(); } } 答: CallMother'smethod2()CallGirl'smethod1() 33.阅读下列程序,请写出调用Test33(4)的输出结果。 publicstaticvoidTest33(intn){ inti,j,a[][]=newint[n][n]; for(i=0;i<4;i++){ if(i%2==0)i24 for(j=0;j<4;j++) a[i][j]=j+1; elsefor(j=n-l;j>=0;j--) a[i][j]=n-j; } for(i=0;i for(j=0;j System.out.print("t"+a[i][j]); System.out.println(); } } 答: 1414 2323 3232 4141 34.阅读下列程序,请回答以下问题: (1)在文本框中输入17,在文本区中会显示多少行整数,各行有几个数? (2)如果将程序的第一行删除,程序中标号①~⑨语句中哪些会出现错误? importjava.awt.*;∥问题 (2)所指要删除的行 importjavax.swing.*; importjava.awt.event.*; publicclassTest34extendsJFrameimplementsActionListener{ JTextFieldtextF;JTextAreatextA; Test34(){ Containercon=getContentPane();∥① con.setLayout(newBorderLayout());∥② textF=newJTextField(10);∥③ textF.addActionListener(this);∥④ textA=newJTextArea(6,10);∥⑤ setSize(240,200);∥⑥ con.add(textF,"North");∥⑦ con.add(textA,"Center");∥⑧ setVisible(true);∥⑨ } publicstaticvoidmain(String[]args){ newTest34(); } publicvoiclactionPerformed(ActionEvente){ intn,d; if(e.getSource()==textF){ n=Integer.parseInt(textF.getText()); for(intk=1;k<=n;k++){ d=(int)(Math.ranclom()*1000%1000); textA.append(""+d); if(k%5==0)textA.append(""); } } } } 答: (1)4行,各行的数字个数分别是5、5、5、2。 (2)第1条语句和第2条语句。 importjava.awt.*;//问题 (2)所指要删除的行importjavax.swing.*;importjava.awt.event.*;publicclassTest34extendsJFrameimplementsActionListener{JTextFieldtextF;JTextAreatextA;Test34(){Containercon=getContentPane();//①con.setLayout(newBorderLayout());//②textF=newJTextField(10);//③textF.addActionListener(this);//④textA=newJTextArea(6,10);//⑤setSize(240,200);//⑥con.add(textF,"North");//⑦con.add(textA,"Center");//⑧setVisible(true);//⑨}publicstaticvoidmain(String[]args){newTest34(); }publicvoidactionPerformed(ActionEvente){intn,d;if(e.getSource()==textF){n=Integer.parseInt(textF.getText());for(intk=1;k<=n;k++){d=(int)(Math.random()*1000%1000);textA.append(""+d);if(k%5==0)textA.append("\n");}}}} 35.阅读下列程序,请回答以下问题: (1)程序运行时,呈现的界面中菜单条有哪些菜单? (2)程序中带注释/*1*/的代码行的作用是什么? importjavax.swing.*;importjava.awt.*;importjava.awt.event.*; classMenuWindowextendsJFrameimplementsActionListener{ JTextFieldtext; MenuWindow(Strings,StringmenuList[][]){ setTitle(s); Containercon=this.getContentPane(); con.setLayout(newBorderLayout()); this.setLocation(100,100);this.setSize(300,100); JMenuBarmenubar=newJMenuBar(); for(inti=0;i JMenumenu=newJMenu(menuList[i][0]); for(intj=1;j JMenuItemanItem=newJMlenuItem(menuList[i][j]); /*1*/anItem.setActionCommand(menuList[i][j]); anItem.addActionListener(this);menu.add(anItem); } menubar.add(menu); } text=newJTextField();setjMenuBar(menubar); con.add(text,BorderLayout.SOUTH); } publicvoidactionPerformed(ActionEvente){ text.setText("<"+e.getActionCommand()+">菜单项被选中! "); } } publicclassTest35{ publicstaticvoidmain(String[]args){ MenuWindowwindow; StringmenuList[][]={{"体育","跑步","打篮球","打乒乓"}, {"娱乐","唱歌","跳舞"}, {"学习","数学","语文"}}; window=newMenuWindow("菜单示例程序",menuList); window.setVisible(true); } } 答: (1)体育、娱乐、学习,三个菜单。 (2)用菜单项名称设置该菜单项事件源的文字信息。 importjavax.swing.*;importjava.awt.*;importjava.awt.event.*;classMenuWindowextendsJFrameimplementsActionListener{JTextFieldtext;MenuWindow(Strings,StringmenuList[][]){setTitle(s);Containercon=this.getContentPane();con.setLayout(newBorderLayout());this.setLocation(100,100);this.setSize(300,100);JMenuBarmenubar=newJMenuBar();for(inti=0;i "); }}publicclassTest35{publicstaticvoidmain(String[]args){MenuWindowwindow;StringmenuList[][]={{"体育","跑步","打篮球","打乒乓"},{"娱乐","唱歌","跳舞"},{"学习","数学","语文"}};window=newMenuWindow("菜单示例程序",menuList);window.setVisible(true);}} 36.阅读下列程序,请回答以下问题: (1)程序要求在文本框text中输入的内容是什么? (2)程序采用什么输入方式下载网络文件? import.*;importjava.awt.*; importjava.awt.event.*;importjava.io.*;importjavax.swing.*; publicclassTest36{ publicstaticvoidmain(Stringargs[]){ newConnectNet("读取网络文本文件示意程序"); } } c
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 自考 Java 语言程序设计 试题 答案 资料