《9月全国自考Java语言程序设计方案真题及答案 .docx》由会员分享,可在线阅读,更多相关《9月全国自考Java语言程序设计方案真题及答案 .docx(26页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精品名师归纳总结全国 2021 年 1 月 Java 语言程序设计 一试卷课程代码: 04747一、单项挑选题 本大题共 10 小题,每道题1 分,共 10 分在每道题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多项或未选均无分。1. 以下字符组合不能作为Java整型常量的是 A.078B.0x3ACB C.5000D.0x3ABC2. 以下程序代码的输出结果是 int x = 10 。while x 7 System.out.print*。 x-。 A.* B.*C.*D.*3. 设类 U 声明,及对象u 和 v 的定义如下: class Uint x,
2、int y 。Uint a, int bx= a 。 y = b。void copyU a x = a.x 。 y = a.y。U u = new U1, 2, v = new U2, 3 。在以下供挑选的代码中,可能引起系统回收内存的是 A.u.x=v.y 。u.y=v.x 。B.u=v 。C.u.copyv 。 D.v.copyu 。4.设有以下代码:String s l=123 。String s2=123 。String s3=new String123 。就表达式 s1=s2 和 s1=s3 的值分别是 可编辑资料 - - - 欢迎下载精品名师归纳总结A. true , trueB.
3、false,false C.true, falseD.false, true5. 以下关于 AWT 与 Swing 之间关系的表达,正确选项A. Swing 是 AWT 的提高和扩展B. 在写 GUI 程序时, AWT 和 Swing 不能同时使用C.AWT 和 Swing 在不同的平台上都有相同的表示D.AWT 中的类是从 Swing 继承的6. 在以下 Swing 组件中,能为它指定布局治理器的是 A.JScrollBar 对象 B.JMenuBar 对象C.JComboBox 对象 D.JDialog 对象7. 一般的绘图程序要定义一个JPanel 子类。在JPanel 子类中仍要重定义
4、一个方法,在这个方法中调用绘图方法,绘制各种图形。要重定义的方法是A. paint B.paintComponent C.repaintD.update8. 用 Runnable 接口实现多线程的主要工作是A. 声明实现 Runnable 接口的类,在类内实现run方法,让线程调用 start方法。B. 声明实现 Runnable 接口的类,在类内实现run 方法,在类内声明线程对象,在init 方法中创建新线程,启动新线程。C. 声明实现 Runnable 接口的类,在类内实现run 方法,在类内声明线程对象,在Init 方法或 start方法中创建新线程,在start方法中启动新线程。D.
5、 声明实现 Runnable 接口的类,在类内实现run 方法,在 init 方法中创建新线程,在start方法中启动新线程。9. 程序假如要按行输入输出文件的字符流,最合理的方法是采纳 A.BufferedReader 类和 BufferedWriter 类B. InputStream 类和 OutputStream 类C.FileReader 类和 FileWriter 类D.File_Reader 类和 File_Writer 类10. 在编写拜访数据库的 Java程序中,要用到DriverManager 类。该类的作用是 A. 储备查询结果B. 处理与数据库的连接C. 在指定的连接中处
6、理 SQL 语句可编辑资料 - - - 欢迎下载精品名师归纳总结D. 处理驱动程序的加载和建立数据库连接二、填空题 本大题共 10 小题,每道题 2 分,共 20 分请在每道题的空格中填上正确答案。错填、不填均无分。11. Java程序的字节码文件的扩展名是 。class12. 构造一个 Java 表达式: y x5,并且 x.=0 。这个表达式是。y/x5 & x.=013. 在类声明之前用修饰,声明类是不能被再继承的类,即它不能再有子类。final14. 设有字符串定义: String s=ABCDABCD。就表达式 s.indexOfB 的值是。115. 在实现接口 ActionList
7、ener 的方法 actionPerformed 中,常用的有两个获得大事源的方法,它们是getActionCommand 和。getSource可编辑资料 - - - 欢迎下载精品名师归纳总结16. 使用单项按钮的方法是将一些单项按钮用被选中。 ButtonGroup 对象分组,使同一组内的单项按钮只答应一个可编辑资料 - - - 欢迎下载精品名师归纳总结17. 在 Java 语 言 中 , 用 类 Font 对 象 设 置 字 型 。 如 果 要 设 置 的 字 型 是 : 细 明 体、 正常 风 格Font.PLAIN , 12 磅字号,构造这样要求的 Font 对象 fnA 的代码是
8、。 Font fnA=new Font “细明体 ”,Font.PLAIN.1218. 线程从堵塞状态复原到就绪状态,有三种途径:自动复原、用resume方法复原和用方法复原。 notify 或 notifyAll19. 为一般的 8 位字节流文件读和写操作供应支持的类是 。InputStream OutputStream20. Connection 类是 java.sql 包中用于处理与数据库连接的类。Connection 对象是用来表示 的对象, Java程序对数据库的操作都在这种对象上进行。数据库连接三、简答题 本大题共 6 小题,每道题3 分,共 18 分21. 请写出表示 year
9、年是闰年的 Java 表达式。闰年的条件是:每4 年一个闰年,但每 100 年少一个闰年,每 400 年又增加一个闰年。 year%4= =0 & year%4.=0|year%400= =022. 请写出在类的方法的定义之前,加上修饰字public 、 private 的区分。Public 修饰的方法为公用方法,任何类的方法都可以拜访他Private 修饰的方法,本类内部可以拜访23. 请写出将文本区 text 放置于滚动面板 jsp,并将滚动面板 jsp 添加到 JFrame 窗口 myFrame 的 Java语句。TextArea text=new TextArea 。JScrollPa
10、ne jsp=new JScrollPanetext。可编辑资料 - - - 欢迎下载精品名师归纳总结myFrame.getContentPane.addjsp 。24. 要用 Graphics2D 类的方法画一个图形,第一要把参数对象g 强制转换成 Graphics2D 对象。然后, 用图形类供应的静态方法Double 创建一个图形对象。最终,以图形对象为参数调用Graphics2D 对象的 draw 方法绘制这个图形。请写出用这样的方法绘制一条线段的程序段,线段的两个端点分别是10.0, 10.0和30.0, 30.0。Graphics2D g2d= Graphics2D g 。Line2
11、D line=new Line2D.Double10,20,30,40。G2d.drawline25. 请写出字符流数据与字节流数据的区分。P.17526. 请写出 URLConnection 类在编写 Java 网络应用程序中的作用。URLConnection 类完成流对象和实现网络连接四、程序填空题 本大题共 5 小题,每道题4 分,共 20 分27. 方法 int sigmaDigitint n 的功能是求出十进制整数n 的各位数字之和。例如, n=1234,该方法的返回值是 10。static int sigmaDigit int n int sum = 0, d 。while n 0
12、 d=n% 10。 。 sum+=dn/= 10。 。 return sum28. 以下小应用程序能响应鼠标按动的大事,当鼠标在正文区的某个位置被点击时,就在该位置显示一个记号“ ”,程序限制最多保留最新20 个位置。import java.applet.* 。 import java.awt.* 。 import javax.swing.* 。 import java.awt.event.* 。class MyPanel extends JPanel public void printGraphics g, int x, int yg.setColorColor.red 。g.drawLin
13、ex-5, y-5, x+5, y+5 。g.drawLinex+5, y-5, x-5, y+5 。可编辑资料 - - - 欢迎下载精品名师归纳总结class MyWindow extends JFrame implements MouseListener final int MaxMarks = 20 。int currentMarks = 0, markCount = 0 。Point marks = new PointMaxMarks。MyPanel panel。MyWindow this.setLocation100, 100 。this.setSize300, 300。Contai
14、ner con = this.getContentPane。panel = new MyPanel 。con.addpanel。 this 。addMouseListener this.setVisibletrue 。public void paintGraphics g int i 。g.clearRect0,0, this.getWidth, this.getHeight 。fori =0 。i markCount 。 i+ g, marksi.x, marksi.y 。 printpublic void mousePressedMouseEvent e public void mouse
15、ReleasedMouseEvent e public void mouseEnteredMouseEvent e public void mouseExitedMouseEvent e public void mouseClickedMouseEvent emarkscurrentMarks = new Pointe.getX, e.getY 。ifmarkCount MaxMarksmarkCount+。currentMarks = currentMarks+ 1%MaxMarks。repaint。可编辑资料 - - - 欢迎下载精品名师归纳总结public class Class1 ex
16、tends Applet public void initMyWindow myWndow = new MyWindow。29. 这是一个处理挑选工程大事的子窗口类。窗口中有2 个挑选框,当选中某个挑选框时,文本框将显示挑选框对应的信息。class MyWindow extends JFrame implements ItemListener JTextField text。JCheckBox boxl, box2 。MyWindowString s 。 supersContainer con = this.getContentPane。this.setLocation100, 100 。 t
17、his.setSize400, 200。text = new JTextField10 。box1 = new JCheckBoxA 运算机 , false 。box2 = new JCheckBoxB 运算机 , false 。con.setLayoutnew GridLayout3, 2 。con.add new JLabel 运算机产品介绍 , JLabel.CENTER 。addnew JLabel 运算机 2 选 1, JLabel.CENTER 。con.addbox1。 con.addbox2。con.addtext。box1 .addItemListenerthis 。box2
18、.addItemListenerthis 。this.setVisibletrue 。 this.pack。public void itemStateChangede ItemEventife.getItemSelectable = box1 text. setTextA 公司生产 。 else ife.getItemSelectable = box2 可编辑资料 - - - 欢迎下载精品名师归纳总结text. setTextB 公司生产 。30. 这是一个播放幻灯片的小应用程序中的paint 方法。设幻灯片已由小应用程序的init 方法装入内存,并存放于myImage 数组中,幻灯片的张数放
19、于变量num 中, paint 方法要播放的幻灯片号是int currentImage = 0。final int num = 30 。Image myImage = newnum 。Imagepublic void paintGraphics g if mylmagecurrentImage .= nullg.myImagecurrentImage, 10, 10, drawImage myImage currentImage.getWidththis,myImage currentImage.getHeightthis, this 。31. 以下定义的类 ShareData 用于治理多个线
20、程共享数据 val。为了保证对共享数据 val 修改的完整性,线程对 val 的操作需要互斥,类 ShareData 中定义的方法 modiData 就是供共享 val 的线程修改val 的方法。程序共有 20 个线程共享 val,有些削减 val,有些增加 val。public class Class1 public static void mainString args ShareData mrc = new ShareData50。Thread aThreadArray = new Thread20 。System.out.printlnt 刚开头的值是 :+mrc.getVal 。Sy
21、stem.out.printlnt 多个线程正在工作 ,请稍等 . 。forint i = 0 。 i 20 。 i+ int d = i % 2 = 0 . 50 : -30 。aThreadArrayi = new Threadnew MyMultiThreadClassmrc, d。aThreadArrayi.start 。WhileLoop :/ 等待全部线程终止可编辑资料 - - - 欢迎下载精品名师归纳总结whiletrue可编辑资料 - - - 欢迎下载精品名师归纳总结forint i = 0 。 i 20。 i+ ifaThreadArrayi. continue WhileL
22、oop。isAlive可编辑资料 - - - 欢迎下载精品名师归纳总结break。System.out.printlnt 最终的结果是 : +mrc.getVal 。class MyMultiThreadClass implements Runnable ShareData UseInteger。 int delta 。MyMultiThreadClassShareData mrc, int d UseInteger = mrc。delta = d。public void run forint i = 0 。 i 1000。 i+ UseInteger.modiDatadelta。try Th
23、read.sleep10 。/做一些其他的处理catchInterruptedException e class ShareData int val 。ShareDataint initValueval = initValue 。 int getValreturn val 。private void putValint vval = v。 void modiDataint d synchronizedputValgetVal + d 。五、程序分析题 本大题共 5 小题,每道题4 分,共 20 分可编辑资料 - - - 欢迎下载精品名师归纳总结32. 阅读以下程序,请写出该程序的输出结果。cl
24、ass A int x, y 。Aint a, int b x= a。y= b。public class sample public static void mainString args A pl, p2。p2 = new A12, 15 。p1 = p2。 p2.x+。System.out.printlnp1.x= + p1 .x 。p1.x=1333. 阅读以下程序,请写出调用pascal4的输出结果。static void pascalint n int pas 。pas = new intn 。pas0 = 1 。System.out.printlnpas0 。for int i =
25、 2 。 i 0。 j- pasj = pasj + pasj - 1 。for int j = 0 。 j i 。 j+System.out.printpasj + 。System.out.println 。可编辑资料 - - - 欢迎下载精品名师归纳总结11112 113 3 134. 阅读以下程序,请用示意图画出程序运行时出现的界面。import java.applet.* 。import java.awt * 。import javax.swing.* 。class MyPanel extends JPanel JButton button 。 JLabel label。MyPanel
26、String s1, String s2 this.setLayoutnew GridLayout2, 2 。button = new JButtons1 。label = new JLabels2, JLabel.CENTER 。addbutton 。 addlabel。addnew JLabel。public class Class1 public static void mainString args JFrame mw = new JFrame一个示意窗口 。mw.setSize400, 250。Container con = mw.getContentPane。con.setLayo
27、utnew BorderLayout 。MyPanel panel1, panel2。panel1 = new MyPanel 按钮 1 , 标签 1。panel2 = new MyPanel 按钮 2, 标签 2。JButton button = new JButton 开头按钮 。con.addpanel1, North 。con.addpanel2, South 。con.addbutton, Center 。mw.setVisibletrue 。可编辑资料 - - - 欢迎下载精品名师归纳总结35.阅读以下程序,请回答以下问题:(1) 程序要求在文本框 text 中输入的内容是什么.需
28、要读取的文件 URL 的址(2) 帮助文本区 showArea 组件的作用是什么 .显示读取的文件内容(3) 如何使程序开头下载网络文本文件. 点击下载按钮4 程序采纳什么输入方式下载网络文件.使用字节流完成下载import .* 。 import java.awt.* 。import java.awt.event.* 。 import,java.io.* 。 import javax.swing.* 。public class Class1可编辑资料 - - - 欢迎下载精品名师归纳总结public static void mainString args.new ConnectNet 读取网
29、络文本文件示意程序 。 class ConnectNet extends JFrame implements ActionListener JTextField text=new JTextField30 。JTextArea showArea=new JTextArea。JButton b=new JButton 下载 。 JPanel p=new JPanel。 ConnectNetString ssupers。 Container con=this.getContentPane。 p.addtext。 p.addb。JScrollPane jsp=new JScrollPaneshowA
30、rea。 b.addActionListenerthis 。con.addp,North 。 con.addjsp, Center 。 setDefaultCloseOperationJFrame.EXIT_ON_CLOSE 。 setSize500, 400。setVisibletrue 。public void actionPerformedActionEvent eString urlName=text.getText 。try URL url=new URLurlName。 /由网址创建 URL 对象URLConnection tc=url.openConnection 。 /获得 U
31、RLConnection 对象tc.connect。/设置网络连接InputStreamReader in=new InputStreamReadertc.getInputStream。 BufferedReader dis=new BufferedReaderin 。 String inLine 。 whileinLine=dis.readLine.=nullshowArea.appendinLine+n 。 dis.close。catchMalformedURLException e2e2.printStackTrace。catchIOException e3 e3.printStackT
32、race 。 36.阅读以下程序,请写出该程序的功能。import java.applet.* 。 import java.awt.* 。可编辑资料 - - - 欢迎下载精品名师归纳总结public class Class1 extends java.applet.Applet implements Runnable Thread myThread = null 。public void start setSize500, 400。 if myThread = null myThread = new Threadthis 。 myThread.start 。public void run wh
33、ile myThread .= null try myThread.sleep500 。 catch InterruptedException e repaint。public void paintGraphics g int x = int400*Math.random。int y = int300*Math.random。g.setColorColor.red 。 g.fillOvalx,y, 10, 10 。随机绘制外切矩形为10 红色的圆六、程序设计题 本大题共 2 小题,每道题6 分,共 12 分37. 编写数组复制方法。该方法从已知平稳的两维数组的左下角复制出一个非平稳的三角二维数
34、组。设复制数组方法的模型为:public static double leftDownConerdoubleanArray publicstaticdouble leftDownConerdoubleanArray intl1= anArray.length。intl2=anArray0.length。doubletemp。ifl1=l2temp=newdoublel1。for inti=0。il1。i+可编辑资料 - - - 欢迎下载精品名师归纳总结for intj=0。ji+1。j+returntemp。 elsefor inti=0。il2。i+ for intj=0。ji+1。j+re
35、turntemp。tempi=newdoublei+1。tempij=anArrayij。temp= newdoublel2。tempi=newdoublei+1。tempij=anArrayl1-l2+ij。可编辑资料 - - - 欢迎下载精品名师归纳总结38. 设计实现以下形式布局的Java小应用程序。注 1:其中空白格是文本框,用于输入对应的内容。注 2:这里给出的是程序的一部分,你要编写的是方法MyWindowString s 。import java.applet.* 。 import javax.swing.* 。 import java.awt.* 。class MyWindow
36、 extends JFrameJTextField textl , text2, text3,text4。public MyWindowString s/这个方法是你要编写的supers。Container con=getContentPane。con.setLayoutnew GridLayout2,4。JLabel label1=new JLabel学号。JLabel label2=new JLabel姓名。JLabel label3=new JLabel考试成果 。JLabel label4=new JLabel平常成果 。text1=new JTextField。text2=new J
37、TextField。text3=new JTextField。text4=new JTextField。con.addlabel1。con.addtext1。con.addlabel2。con.addtext2。con.addlabel3。con.addtext3。可编辑资料 - - - 欢迎下载精品名师归纳总结con.addlabel4。thiscon.addtext4.setVisibletrue。 。public class Class1 extends AppletMyWindow myWindow。public void init myWindow=new MyWindow一个小应用程序 。 可编辑资料 - - - 欢迎下载