试题与答案

下面是一个Applet程序,程序的功能是显示一个圆心在Applet的中心,半径从0到

题型:问答题

题目:

下面是一个Applet程序,程序的功能是显示一个圆心在Applet的中心,半径从0到100像素的不断变大的蓝 * * 的动画。请改正程序中的错误(有下划线的语句),使程序执行后,能得到预期的结果。 注意:不改动程序的结构,不得增行或删行。 程序的执行结果为:   

import java.awt.*; import java.applet.*; /* <applet code=XiaoQiu width=800 height=600> </applet> */ public class XiaoQiu extends Applet implements Runnable { int currentX=0,currentY=0; Thread m_Draw=null; public void init() { m_Draw=new Thread (super); } public void paint(Graphics g) {g.setColor(Color.blue);mycircle(g,getSize().width/2,getSize().height/2,currentX,currentY); }public void start() { m_Draw.start();try { Thread.sleep(500); } catch(InterruptedException e){}} public void stop() { if(m_Draw.isAlive()) m_Draw. stop(); } public void run(){ try { while(true) { currentX++; currentY++; if(currentX>i00&&(currentY>100)){ currentX=0; currentY=0;} paint(); Thread.sleep(100);} } catch(InterruptedException e){} } public void mycircle(Graphics g,int x,int y,int rx, int ry) { g.filloval(x-rx,y-ry,2*rx,2*ry); } } ex39_3. html: <html> <head> <title>A Simple Program</title> </head> <body> <applet cede=" XiaoQiu.class" width=800 height=400> </applet> </body> </html>

答案:

参考答案:

解析:m_Draw=new Thread(this), if (currentX>100 | | (currentY>100)) repaint(); 本题主要考查Java Applet程序的设计,Java语句的线程机制以及for循环语句。解答本题的关键是比较熟练的掌握Java Applet程序的设计,Java语句的线程机制以及for循环语句的有关知识。m_Draw=new Thread(this);语句的功能是以当前对象为参数创建线程对象m_Draw,if(currentX>100||(currentY>100))语句的功能是获取小球的坐标,repaint();语句的功能是重新绘制小球。

试题推荐
微信公众账号搜索答案