[计算机类试卷]国家二级(JAVA)机试模拟试卷75及答案与解析.doc

上传人:李朗 文档编号:503611 上传时间:2018-11-29 格式:DOC 页数:6 大小:64KB
下载 相关 举报
[计算机类试卷]国家二级(JAVA)机试模拟试卷75及答案与解析.doc_第1页
第1页 / 共6页
[计算机类试卷]国家二级(JAVA)机试模拟试卷75及答案与解析.doc_第2页
第2页 / 共6页
[计算机类试卷]国家二级(JAVA)机试模拟试卷75及答案与解析.doc_第3页
第3页 / 共6页
[计算机类试卷]国家二级(JAVA)机试模拟试卷75及答案与解析.doc_第4页
第4页 / 共6页
[计算机类试卷]国家二级(JAVA)机试模拟试卷75及答案与解析.doc_第5页
第5页 / 共6页
点击查看更多>>
资源描述

1、国家二级( JAVA)机试模拟试卷 75及答案与解析 一、基本操作题( 30分) 1 10位同学参加某次团队测试,要求每位同学都必须及格、同时团队平均分不少于 80分,整个团队才能够通过。每位同学的成绩可以通过随机数产生 (0 100)。请在程序的每条横线处填写一条语句,是程序的功能完整。 注意:请勿改动 main()主方法和其他已有的语句内容,仅在横线处填入适当的语句。 源程序文件代码清单如下: _; public class While public static void main(String args) int fenshu=60; int sumfenshu=0; int i=1;

2、 while(fenshu =60) System. out. print in (fenshu+“ “); sumfenshu+=fenshu; i+; System.out.println(); if(_) System. out. println ( “团队通过 “) else System. out.println (“团队测试不通过 “); 二、简单应用题( 40分) 2 以下程序中,当用户单击 “移动 ”按钮以后,就可以使用方向键控制屏幕上句子 的移动,单击 “停止 ”按钮,则句子不再随着方向键移动。运行结果如下图所示 注意:请勿改动其他已有语句内容,仅在横线处填入适当语句。 im

3、port java.applet.*; import java.awt.*; import java.awt.event.*; public class Example2_8 extends Applet implements KeyListener public void keyTyped(KeyEvent e) public void keyReleased(KeyEvent e) Button button; Button stopButton; Label out; int x,y; public void _ () button = new Button(“移动 “); button

4、.addActionListener(new AddMoveListener(this); stopButton = new Button(“停止移动 “); stopButton.addActionListener(new RemoveListener(this); stopButton.setEnabled(false); out = new nabel(“按下按钮以后我可以随方向键移动 “); add(button); add(stopButton); add (out); public void start() super, start (); public void keyPress

5、ed(KeyEvent e) x=out.getBounds().x; y=out.getBounds().y; if(e.getKeyCode()=KeyEvent.VK_UP) y=y-2; if(y =0) y=0; out. setLocation (x, y); else if(e.getKeyCode()=KeyEvent.VK_DOWN) y=y+2; if (y =300) y=300; out. setLocation (x, y); else if(e.getKeyCode()=KeyEvent.VK_LEFT) x=x-2; if(x =0) x=0; out. setL

6、ocation (x, y); else if(e.getKeyCode()=KeyEvent.VK_RiGHT) x=x+2; if(x =300) x=300; out. setLocation (x, y); class AddMoveListener implements ActionListener Example2_8 lis; public AddMoveListener(Example2_8 lis) this.lis = lis; public void actionPerformed(ActionEvent e) button. _(lis); stopButton, se

7、tEnabled (true); class RemoveListener implements ActionListener Example2_8 lis; public RemoveListener(Example2_8 lis) this.lis = lis; public void actionPerformed(ActionEvent e) button, removeKeyListener (lis); stopButton.setEnabled(false); Example2_8. html HTML HEAD TITLE Example2_8 /TITLE /HEAD BOD

8、Y APPLET CODE=“Example2_8.class“WIDTH=400 HEIGHT=500 /APPLET /BODY /HTML 三、综合应用题( 30分) 3 下面程序的目的是在屏幕上显示当前目录下的文件信息。文件信息通过表格JTable的实例显示。请改正程序中的错误 (有下划线的语句 ),使程序能输出正确的结果。 注意:不改动程序的结构,不得增行或删行。 import java.awt.*; import javax.swing.*; import java.util. Date; import javax.swing.table.*; import java.applet

9、.*; import java.io.*; public class Example3_10 extends JApplet, JFrame public void init() FileModel fm = new FileModel(); JTable jt = new JTable(); jt.setAutoResizeMode(JTable.AUTO_RESIZE_OFF); jt.setColumnSelectionAllowed(true); JScrollPane jsp = new JScrollPane(jt); getContentPane().add(jsp, Borde

10、rLayout.CENTER); public static void main(String args) Example3_10 ft = new Example3_10(); ft.init(); JFrame f = new JFrame(); f.setDefaultCloseOperation(JFrame.EXIT ON CLOSE); f.getContentPane() .add(ft.getContentPane(); f.setSize (300, 400); f.show(); class FileModel extends AbstractTableModel Stri

11、ng columnName = new String “文件名 “, “大小 “, “最后修改时间 “ Object data; public FileModel() this(“.“); public FileModel(String dir) File file = new File(dir); String files = file.list(); data = new Object files.length columnName.length; for (int i=0; i files.length; i+) File tmp = new File (filesi); datai 0

12、 = tmp.getName(); datai 1 = new Long(tmp.length(); datai 2 = new Date(tmp.lastModified() ); public int getColumnNumber() return columnName.length; public int getRowCount() return data. length; public String getColumnName(int col) return columnNamecol; public Object getValueAt(int row, int col) retur

13、n datarow col; public Class getColumnClass(int c) return getValueAt (0, c) .getClass(); 国家二级( JAVA)机试模拟试卷 75答案与解析 一、基本操作题( 30分) 1 【正确答案】 import java math.*; Math random()*100 (i=10)&(sumfenshu/10) =80) 【试题解析】 本题主要考查 while循环语句的用法。解答本题的关键是熟练使用while循环语句。在本题中, import java.math *;是用来导入 java.math这个数学计算包,

14、Math.random()*100语句是用来产生 100个随机数,if(i=10)&(sumfenshu/10) =80)语句的功能是用来判断团队的人数是否为10、平均分数是否大于等于 80。 二、简单应用题( 40分) 2 【正确答案】 init addKeyListener 【试题解析】 本题考查知识点:小应用程序概念、 Applet执行过程、JavaApplication和 Applet。解题思路: Applet运行时,首先由浏览器调用 init方法,该方法通知 Applet已被加载,在这个方法中通常进行一些基 本的初始化过程。 Applet的基本方法还有 start()、 stop()

15、、 destroy()。类 Example2_8实现了“KeyListener”监听器接口,就可以通过该监听器的方法监听键盘事件。需要填空的方法是初始化 Applet程序, keyPressed()方法中专门处理方向键的事件。按下方向键以后,就会调用 Label的 setLocation()方法重新设置 “out”所在的位置。当用户按下 “移动 ”按钮以后, AddMoveListener为 “移动按钮 ”添加了针对键盘的监听器。当用户按下 “停止移动 ”按钮以后, RemoveListener从 “移动 ”按钮中移出针对键盘事件的监听器。 本题中 start方法已经实现,另外两个方法分别用于

16、 Applet的停止和卸载,所以第一个空只能填 “init”,用来为 Applet实现初始化。 由于本题是使用键盘来控制 Label对象的移动,所以必须添加针对键盘的监听器,这样才能对键盘事 件做出反应,第二个空就是给 “button”添加键盘事件监听器。 三、综合应用题( 30分) 3 【正确答案】 extends JFrame JTable(fm) getColumnCount 【试题解析】 本题考查知识点: JTable构件的使用、小应用程序的安全机制解题思路: FileModel定义了一个 JTable的模型,在这个模型中, “File file=new File(dir)”语句获得当

17、前目录下的文件信息,然后将这些文件信息存储在模型的“data”变量中。 Applet的沙箱模型规定,未授权的小应用程序不能访问本地资源,当然也就不能读、写本地计算机的文件系统。本程序需要获得当前目录的信息,因此本题程序只能作为应用程序运行,所以第一处下划线应该去掉 JApplet。 JTable的主要功能是将数据以二维表格的方式显示出来。本题采用的是 MVC模式, FileModel实现了表格的模型。第二条下划线处使用 JTable的构造方法将模型赋予表格 “jt”。 AbstractTableModel所有的抽象方法都需要实现。第三条下划线处的方法在功能上与抽象方法 getColumnCount()相同,但是并没有实现该抽象方法。因此需要更正。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试资料 > 职业资格

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1