刷题刷出新高度,偷偷领先!偷偷领先!偷偷领先! 关注我们,悄悄成为最优秀的自己!

简答题

阅读以下说明和Java程序,填写程序中的空(1)~(6),将解答写入答题纸的对应栏内。

【说明】

以下Java代码实现一个简单绘图工具,绘制不同形状以及不同颜色的图形。部分接口、类及其关系如图5-1所示。


【Java代码】

interface DrawCircle {     //绘制圆形

      public     (1)    ;

}

 

class RedCircle implements DrawCircle {    //绘制红色圆形

       public void drawCircle(int radius,int x, int y)  {

             System.out.println("Drawing Circle[red,radius:" + radius + ",x:" + x + ",y:" +y+ "]");

       }

}

 

class GreenCircle implements DrawCircle {    //绘制绿色圆形

      public void drawCircle(int radius, int x, int y) {

            System.out.println("Drawing Circle[green,radius:" +radius+ ",x: " +x+ ",y: " +y+ "]");

      }

}

abstract class Shape {    //形状

       protected      (2)   ;

 

       public Shape(DrawCircle drawCircle) {

             this.drawCircle = drawCircle;

        }

        public abstract void draw();

}

 

class Circle extends Shape {    //圆形

       private int x,y,radius;

 

       public Circle(int x,int y,int radius,DrawCircle drawCircle) {

                   (3)   ;

                  this.x = x;

                  this.y = y;

                  this.radius = radius;

       }

 

       public void draw() {

              drawCircle.     (4)    ;

       }

}

 

public class DrawCircleMain {

      public static void main(String[] args) {

            Shape redCircle=new Circle( 100,100,10,      (5)      );//绘制红色圆形

            Shape greenCircle=new Circle(200,200,10,      (6)     );//绘制绿色圆形

 

            redCircle.draw();

            greenCircle.draw();

     }

}

使用微信搜索喵呜刷题,轻松应对考试!

答案:

(1)void drawCircle (int radius,int x,int y)

(2)DrawCircle drawCircle

(3)super.drawcircle=drawcircle

(4)drawCircle(radius,x,y)

(5)new redCircle

(6)new greenCircle

解析:

(1)根据说明和代码,DrawCircle是一个接口,需要定义绘制圆形的方法,因此第一空应填写void drawCircle(int radius, int x, int y)。

(2)在Shape这个抽象类中,应该有一个DrawCircle类型的成员变量drawCircle,所以第二空应填写DrawCircle drawCircle。

(3)在Circle类的构造函数中,需要调用父类Shape的构造函数并初始化drawCircle成员变量。使用super关键字调用父类的构造函数,并初始化drawCircle,所以第三空应填写super.drawCircle = drawCircle。

(4)在Circle类的draw方法中,需要调用成员变量drawCircle的drawCircle方法绘制圆形,所以第四空应填写drawCircle(radius, x, y)。

(5)在DrawCircleMain类的main方法中,需要创建一个红色的圆形对象,所以第五空应填写new RedCircle。

(6)同样地,在DrawCircleMain类的main方法中,需要创建一个绿色的圆形对象,所以第六空应填写new GreenCircle。

创作类型:
原创

本文链接:阅读以下说明和Java程序,填写程序中的空(1)~(6),将解答写入答题纸的对应栏内。 【说明】 以

版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。

让学习像火箭一样快速,微信扫码,获取考试解析、体验刷题服务,开启你的学习加速器!

分享考题
share