1、国家二级( JAVA)机试模拟试卷 68及答案与解析 一、基本操作题( 30分) 1 下列程序打包到 example包, main方法调用线程类输出 0 9这 10个数,请填写横线处的内容。 注意:请勿改动 main()主方法和其他已有语句内容,仅在横线处填入适当语句。 _ interface MyInterface public abstract void print(int n); class Mythread extends Thread _ MyInterface public void run() for(int i = 0; i 10; i+) this.print(i); pub
2、lic void print(int n) System.out.print(n +“ “); public class Example1_6 public static void main(String argv) Mythread th = new Mythread(); _ 二、简单应用题( 40分) 2 请完成下列 Java程序:用 JFrame建立一个窗口,再用网格布局管理器,对窗口布局进行控制,上面有 2行 2列 4个按钮,要求对按钮的大小进行设定,宽度为150,高度为 80。 注意:请勿改动 main()主方法和其他已有语句内容,仅在下划线处填入适当的语句。 import jav
3、a. awt. * import java. awt. event. * import javax, swing. * public class ex2_1 public static void main(String args) JFrame frm = new JFrame.( ) frm. setTitle( “ex2_1“) Container cont = frm. getContentPane( ) _; cont. add(new JButton( “button1“) ) cont. add(new JButton( “button2“) ) Dimension dimen=
4、_; JButton btnl = new JButton( “button3“ ) btnl. setpreferredSize(dimen); cont. add(btn1); cont. add(new JButton(“button4“) ); frm. addWindowListener (new WindowAdapter ( ) public void windowClosing (WindowEvent we) System. exit(0) ); frm. pack() frm. setVisible(true); 三、综合应用题( 30分) 3 下面是一个 Applet程序
5、,程序的功能是用鼠标点击画图。本题是通过点击鼠标后画出一个 “Java”字。请改正程序中的错误 (有下划线的语句 ),使程序能输出正确的结果。 注意:不改动程序的结构,不得增行或减行。 import java. awt.* import java. awt. event.*; import java. applet.* /* applet code= SimpleHitMouse. java width= 800 height= 400 /applet */ public class SimpleHitMouse implements Applet private java. util. Ve
6、ctor points= new java. util. Vector(); public void init() addMouseListener(new MouseAdapter () public void mousePressed(MouseEvent e) ( points, add (new Point (e. getX( ), e. getY ( ) ) ); paint( ); ); public void update(Graphics g) repaint(g); public void paint(Graphics g) for(int i=0;i points, siz
7、e() ;i+) Point dot= (Point)points. elementAt(i); g. drawString(“x“ ,dot. x,dot, y), public static void main(String args) Frame fram=new Frame(“CelayTree“); SimpleHitMouse dot=new SimpleHitMouse(); dot. init( ); dot. start(); fram. add( “Center“, dot) fram. setSize(400,300); fram. addWindowListener(n
8、ew WindowAdapter() public void windowClosing(WindowEvent e) System. exit(0); ); fram.show() exl_2, html: html head title A Simple program /title /head body applet code=“SimpleHitMouse, class“ width=800 height=400 /applet /body /html 国 家二级( JAVA)机试模拟试卷 68答案与解析 一、基本操作题( 30分) 1 【正确答案】 package example;
9、implements th.start(); 【试题解析】 MyInterface是自定义的一个接口, Mythread继承于 Thread类同时实现了 MyInterface。主方法先根据 Mythread生成一个线程,然后将其启动。 第 1个空,题目中已经说明要将本程序打包到 example包,则说明要使用关键字“package”。 第 2个空,接口是抽象方法和常量的结合,是 一种特殊的抽象类,接口必须通过“implements”实现以后才能被使用。所有线程都通过 start()启动,进入线程调度队列。然后,系统会根据一定的算法对线程的运行进行调度, run()方法是线程的线程体。故第 3
10、空应该填 “th.start()”。 二、简单应用题( 40分) 2 【正确答案】 cont setLayout(newGridLayout(2, 2) new Dimension(150, 80) 【试题解析】 本题主要考查网格布局管理器 (GridLayout)在使用 swing制作图形用户界面 时的一些简单应用。解题关键是熟悉 GridLayout的使用方法,初始化的方法是通过容器 Container的对象调用 setLayout()方法实现的,而它的一些特点,如并不会保持当初组件所定义的大小等,也需要很熟悉。本题中,第 1个空,将容器通过网格布局管理器设置为 2行 2列;第 2个空,采
11、用初始化Dimension类的对象来给出 Button组件的初始大小:参数分别是宽度和高度。 三、综合应用题( 30分) 3 【正确答案】 extends repaint() paint(g) 【试题解析】 本题主要考查 Java Applet程序的编写、 Java程序事件处理机制。编写 Applet小程序必须要用到 java appelt包中的 Applet类, java applet Appletjava awt Panel的子类。在 Applet中, Applet的显示更新是由一个专门的 AWT线程控制的。与 Applet显示相关的 3个方法: (1)paint()方法。 Applet的
12、 paint()方法具体执行 Applet的绘制。该方法的定义如下: public void paint(Graphics g), paint()方法有一个参 数 g是 Graphics类的实例,该实例对象由浏览器生成,它包含了 Applet的图形上下文信息,通过它向 Applet中显示信息,该对象相当于 Applet的画笔。 (2)update()方法。该方法的定义如下: public void update(Graphics g), update()方法用于更新 Applet的显示。该方法将首先清除背景,再调用 paint()方法完成 applet的具体绘制。 (3)repaint()方法。 repaint()方法的定义如下: public void repaint(),该方法主要用于 Applet的重新显示,它调用 update()方法实现对 Applet的更新。在本题中, extends关键字用于继承父类, repaint(), paint()方法都用于 Applet的重新显示。
copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1