1、二级 JAVA 机试-56 及答案解析(总分:100.00,做题时间:90 分钟)一、1基本操作题(总题数:1,分数:30.00)1._(分数:30.00)_二、2简单应用题(总题数:1,分数:40.00)2.bAlive = false;(分数:40.00)_三、3综合应用题(总题数:1,分数:30.00)3.下面是一个 Applet 程序,其功能是在窗口中绘制 3 个半径递增的圆,并用 RGB 三原色对这 3 个圆填充。要求建立一个绘制圆的类,实现根据指定颜色进行填充的功能,在主程序中通过调用这个类的方法实现圆的绘制。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。注意:不改
2、动程序的结构,不得增行或删行。程序运行结果如下:(分数:30.00)_二级 JAVA 机试-56 答案解析(总分:100.00,做题时间:90 分钟)一、1基本操作题(总题数:1,分数:30.00)1._(分数:30.00)_正确答案:(continue;voidobjprint() ;)解析:解析本题主要考查 continue 关键字,这个语句,main()主方法的使用。解答本题的关键是熟悉 continue 关键字的作用,及成员方法的引用。在本题中 continue;语句是用来退出本次 for 循环语句,关键字 void 是用来说明 main()主方法没有返回值。obj.print();语
3、句是用来引用 print()方法。二、2简单应用题(总题数:1,分数:40.00)2.bAlive = false;(分数:40.00)_正确答案:(startProgress()stopProgress()解析:解析本题主要考查 swing 图形用户界面编程以及多线程编程相结合。解题关键是掌握进度条 JProgressBar 类的基本用法及其与多线程相结合的编程方法,会继承 Thread 类写自己的线程类,完成需要的功能,线程的开始与暂停被封装在 ThreadProg 类中。本题中,第 1 个空,根据点击 Start 按钮事件调用startProgress()方法启动线程;第 2 个空,根据
4、点击 Stop 按钮事件调用 stopProgress()方法暂停线程。三、3综合应用题(总题数:1,分数:30.00)3.下面是一个 Applet 程序,其功能是在窗口中绘制 3 个半径递增的圆,并用 RGB 三原色对这 3 个圆填充。要求建立一个绘制圆的类,实现根据指定颜色进行填充的功能,在主程序中通过调用这个类的方法实现圆的绘制。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。注意:不改动程序的结构,不得增行或删行。程序运行结果如下:(分数:30.00)_正确答案:(sizeCurrentwidthsizeCurrentheightxCircle= (sizeCurrent
5、width-dimCricle) /2yCircle=(sizeCurrentheight-dimCricle)/2)解析:解析本题主要考查根据需要设计能完成绘制圆的 Canvas 子类的编程,以及与 Applet 图形绘制的基本操作相结合的综合应用。解题关键是 CanvasCircle 类的编写,颜色作为对外的接口,根据颜色参数来确定绘制圆的颜色,因此通过类的构造方法从外界获得这个参数,paint()是重载了 Canvas 的方法,初始化 CanvasCircle 对象之后,自动执行实现绘制。本题中,第 1 处,根据条件判断式的含义,很容易得到答案;第 2 处,要明白窗口getSize()width 属性,对应的参数应该是 xCircle,同理第 3 处 getSize()height 属性对应的参数是 yCircle。