还剩5页未读,继续阅读
文本内容:
全国2013年10月高等教育自学考试Java语言程序设计一试题课程代码04747请考生按规定用笔将所有试题的答案涂、写在答题纸上选择题部分注意事项
1.答题前,考生务必将自己的考试课程名称、姓名、准考证号用黑色字迹的签字笔或钢笔填写在答题纸规定的位置上
2.每小题选出答案后,用2B铅笔把答题纸上对应题目的答案标号涂黑如需改动,用橡皮擦干净后,再选涂其他答案标号不能答在试题卷上
一、单项选择题本大题共10小题,每小题1分,共10分在每小题列出的四个备选项中只有一个是符合题目要求的,请将其选出并将“答题纸”的相应代码涂黑错涂、多涂或未涂均无分1.在Java语言中,用于标记回车符的转义字符是A.\bB./bC.\nD./n2.设有定义inti=6;,则执行语句“i+=i-1;’’后,i的值为A.10B.11C.12D.133.以下关于抽象类及抽象方法的说法中,不正确的是A.抽象方法只能出现在抽象类中B.抽象类必须有抽象方法C.有抽象方法的类一定是抽象类D.抽象方法没有实现的代码4.执行下列程序语句后,b的值是Stringa=〃Hello〃;Stringb=a.substring13;A.elB.HeC.ellD.Hel5.能够直接添加组件的Swing容器是A.JFrameB.JDialogC.JWindowDJPanel6.用于判定鼠标右键操作的常量是A.BUTTON1_MASKB.BUTTON2_MASKC.BUTTON3_MASKD.BUTTON4_MASK7.设置异或绘图模式的方法是A.setXORModeB.setPaintModeC.XORModeD.PaintMode8.用来定义临界段,能对共享对象的操作上锁的关键字是A.staticB.shareC.serializeD.synchronized9.如果一次从文件中读出一行数据,可使用的方法是A.FileReader的readLine方法B.BufferedReader的readLine方法C.FileReader的read方法D.BufferedReader的read方法10.获取InetAddress对象的IP地址所用到的方法是A.getHostlPAddressB.getHostlPC.getHostAddressD.getHost非选择题部分注意事项用黑色字迹的签字笔或钢笔将答案写在答题纸上,不能答在试题卷上
二、填空题本大题共10小题,每空2分,共20分11.在Java语言中,双精度型变量在内存中占__________个字节12.在Java语言中,逻辑右移运算符为__________13.在Java语言中,通过扩展原有的类,声明新类的机制被称为__________14.已知字节数组b,取由b[i]开始至b[j]其中j≥i≥0结束的字节字符构造一个字符串s,其语句为Strings=newString__________;15.将容器区域分成东、南、西、北、中五个区域的布局类是__________16.在构造非强制对话框时,所使用的构造方法是JDialogfs__________,其中f为对话框所依赖的窗口,s为对话框的标题17.在Java语言中,要播放音频文件可以使用__________类18.当线程调用resume方法后,就进入__________状态19.要使用输入/输出操作的程序,必须要导入__________包20.在进行数据库访问时,查询结果存放在一个用__________类声明的对象中
三、简答题本大题共6小题,每小题3分,共18分21.请写出下面程序段的执行结果intn=90;intk=2;System.out.printn+″=〞;whilek=n{ifk==n{System.out.printlnn;break;}elseifn%k==0{System.out.printk+″*″;n=n/k;elsek++;}22.为了系统安全,对JavaApplet小应用程序有什么限制23.请写出声明int类型的二维数组intArr的三种形式24.请写出在JFrame框架窗口对象中添加组件的步骤25.请写出使用Graphics2D类声明并创建一个左上角为20,
30、边长为50的正方形对象square的语句26.请写出使用纯JavaJDBC驱动程序连接数据库的步骤
四、程序填空题本大题共5小题,每空2分,共20分完全代码,使它能正确实现题意的功能错填、不填均无分27.一个数如果恰好等于它的因子之和,这个数就称为“完全数”例如6=1+2+3方法voidfindPerfectNumber的功能是找出1000以内的所有完全数staticvoidfindPerfectNumber{System.out.println″1000以内的完全数有″;forinti=1;i1000;i++{intt=0;forintj=1;j=i/2;j++if
①t=t+j;if
②System.out.primti+;}}28.某应用程序的类实现了接口ActionListener,在其窗口的内容面板conPane中,有一个标上文字“红色”的按钮对象btn,并正确为该按钮对象注册了监视器按钮处理程序要实现的功能是当点击这个按钮时,窗口的背景色置为红色,并设置该按钮不再响应事件publicvoidactionPerformedActionEvente{ife.getActionCommand.equals红色{conPane.setBAckground
①;btn.
②;}}29.某小应用程序有一个按钮和一个文本区,按钮作为发生键盘事件的事件源,并对它进行监视程序运行时,先点击按钮,让按钮激活;从键盘输入英文字母时,在文本区显示输入的字母importjAva.applet.*;importjava.awt.event.*;importjavax.swing.*;publicclassTest29extendsAppletimplementsKeyListener{intcount=0;JButtonbutton=newJButtonBEGIN;JTextAreatextl=newJTextArea1,10;publicvoidinit{button.addKeyListenerthis;addtextl;
①;}publicvoidkeyPressedKeyEvente{intt=e.getKeyCode;ift=KeyEvent.VK_At=KeyEvent.VK_Z{text
1.appendchart+;}}publicvoid
②KeyEvente{}publicvoidkeyReleasedKeyEvente{}}30.以下小应用程序获取图像文件bg.jpg并显示importjava.applet.*;importjava.awt.*;publicclassTest30extendsApplet{lmagemyImg;publicvoidstart{myImg=getImage
①bg.jpg¨;}publicvoidpaintGraphicsg{g.
②myImg00this;}}31.以下程序段实现简单的线程创建、启动和终止的过程MyThreadClassmyThread=newMyThreadClass;myThread.
①;try{myThread.sleep10000;}CatchInterruptedExceptione{}myThread.
②;
五、程序分析题本大题共5小题,每小题4分,共20分32.阅读下列程序,请写出该程序的运行结果ClassParent{Stringone,two;publicParentStringa,Stringb{one=a;two=b;}publicvoidprint{System.out.printlntwo+to+one;}}publicclassChildextendsParent{publicChildStringa,Stringb{superab;}publicvoidprint{System.out.printlnone+to+two;}publicstaticvoidmainStringargs[]{parentp=newParentsouth,north;parentt=newChildeast,west;p.print;t.print;}}33.阅读下列程序,请写出该程序的功能importjava.applet.Applet;importjava.awt.*;publicclassTest33extendsApplet{publicvoidpaintGraphicsg{forinti=0;i6;i++drawGraphicsIg;}publicvoiddrawGraphicsintnGraphicsg{g.clearRect10,10,300,300;switchn{case0:case3g.setColorColor.red;g.drawRect50,50,150,150;break;case1:case4g.setColorColor.blue;g.drawOval40,40,160,160;break;case2:case5g.setColorColor.green;g.fillRect50,50,200,200;break;}try{Thread.sleep1500;}catchImerruptedExceptione{System.exit0;}}}34.阅读下列程序,请写出该程序的功能importjavax.swing.*;importjava.awt.*;importjava.awt.event.*;publicclassTest34{publicstaticvoidmainString[]args{ComboBoxDemomyComboBoxGUI=newComboBoxDemo;}}ClassComboBoxDemoextendsJFrameimplememsItemListener{StringCountryList[]={美国,中国,英国,俄罗斯,韩国,德国};imGoldMedalNumber[]={46,38,29,24,13,11};JLabellabel;JComboBoxCombobox;PublicComboBoxDemo{setSize350,150;setTitle第三十届伦敦奥运会金牌查询;ComainerconPane=getContentPane;conPane.setLayoutnewFlowLayout;combobox=newJComboBoxCountryList;combobox.addItemListenerthis;conPane.addcombobox;label=newJLabel;conPane.add1abel;this.setVisibletrue;}publicvoiditemStateChangedItemEveme{ife.getSource==comboboxlabel.setTextString.valueOfGoldMedalNumber[combobox.getSelectedIndex];}}35.阅读下列程序,请回答下面的问题1两个文本区内分别每次追加何种字符有多少个2两个文本区里面内容的显示速度有何区别importiava.awt.*;importjava.applet.*;importjavax.swing.*;publicclassTest35extendsApplet{JTextArea1Text,rText;publicvoidinit{setSize600,500;setLayoutnull;1Text=newJTextArea;rText=newJTextArea;lText.setFontnewFontTimesNewRoman,140;rText.setFontnewFontModern,1,40;JScrollPanejsp1=newJScrollPane1Text;JScrollPanejsp2=newJScrollPanerText;addjsp1;addjsp2;jspl.setBounds2020250450;jsp
2.setBounds31020200450;newthreadl1Text
1.start;newthreadlrText
2.start;}}classthreadlextendsThread{protectedJTextAreat;Stringtext=ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789;publicthread1JTextAreatext,Stringm{superm;t=text;}publicvoidrun{whiletrue{StringS=;forinti=0;i6;i++{intk;ifgetName.equals1k=intMath.random*100%26;elsek=intMath.random*100%10+26;s+=text.charAtk;//获取k位置字符}t.appends+\n;t.setCaretPositiont.getText.1ength;//最近输出的内容在文本区中显示try{sleepgetName.equals1400:700;}catchInterruptedExceptione{}}}}36.阅读下列程序,请写出该程序的功能importjava.io.*;classTest36{publicstaticvoidmainStringarg[]{intch;try{FileReaderin=newFileReadernewFilefile
1.txt;FileWriterout=newFileWriternewFilefile
2.txt;whilech=in.read!=-1{ifch=int′A′ch=int′Z′ch+=32;elseifch=int′a′ch=ira′z′ch-=32;out.writech;}in.close;out.close;}catchFileNotFoundExceptione1{System.out.println文件没有找到!+e1;}catchIOExceptione2{System.out.println文件读写出错!+e2;}System.out.println程序结束!’;}}
六、程序设计题本大题共2小题,每小题6分,共12分37.编写方法int[][]transposeint[][]a,方法将生成并返回一个新数组b,该数组为a的转置数组注数组转置指的是将数组的行、列内容互换38.以下程序界面有一个标以“OK”的按钮bt、一个文本区ta和一个文本框tf当在文本框中输入内容完毕后,点击“OK”按钮可以使文本框内的字符串添加到文本区中,并输出文字“因点击按钮而引发添加”;或者按回车键使得文本框内的字符串添加到文本区中,并输出文字“因在文本框里回车而引发添加”注这里是给定程序的部分代码,你要编写的是actionPerformedActionEvente方法importjavax.swing.*;importjava.awt.*;importjava.awt.event.*;publicclassTest38extendsJFrameimplementsActionListener{JButtonbt=newJButtonOK;JTeXtFieldtf=newJTextField20;JTextAreata=newJTextArea10,20;publicTest38{Containerc=getContentPane;c.setLayoutnewFlowLayout;//指定布局方式为顺序布局c.addta;c.addbt;c.addtf;bt.addActionListenerthis;tf.addActionListenerthis;setSize400,300;setVisibletrue;}publicvoidactionPerformedActionEvente{//请在“答题纸’’上编写以下代码}publicstaticvoidmainStringargs[]{newTest38;}}。