首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
(2013年下半年下午试题六)阅读下列说明和Java代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 欲开发一个绘图软件,要求使用不同的绘图程序绘制不同的图形。以绘制直线和圆形为例,对应的绘图程序如表10.5所示。 根据绘图软
(2013年下半年下午试题六)阅读下列说明和Java代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 欲开发一个绘图软件,要求使用不同的绘图程序绘制不同的图形。以绘制直线和圆形为例,对应的绘图程序如表10.5所示。 根据绘图软
admin
2018-07-27
45
问题
(2013年下半年下午试题六)阅读下列说明和Java代码,将应填入(n)处的字句写在答题纸的对应栏内。
【说明】
欲开发一个绘图软件,要求使用不同的绘图程序绘制不同的图形。以绘制直线和圆形为例,对应的绘图程序如表10.5所示。
根据绘图软件的扩展性要求,该绘图软件将不断扩充新的图形和新的绘图程序。为了避免出现类爆炸的情况,现采用桥接(Bridge)模式来实现上述要求,得到如图10.16所示的类图。
【Java代码】
______(1),Drawing{
______(2);
______(3);
}
class DP1{
static public void draw_a_line(double x1,double y1,double x2,double y2)
{/*代码省略*/}
static public void draw_a_circle(double x,double y,double r){/*代码省略)/}
};
class DP2(
static public void drawline(double x1,double x2,double y1,double y2)
{/*代码省略*/}
static public void drawcircle(double x,double y,double r){/*代码省略*/}
};
class V1Drawing implements Drawing{
public void drawLine(double x1,double y1,double x2,double y2){
/*代码省略*/}
public void drawCircle(double x,double y,double r){ ______(4);}
}l
class V2Drawing implements Drawing{
public void drawLine(double x1,double y1,double x2,double y2) {
/*代码省略*/}
public void drawCircle(double z,double y,double r){ ______(5);}
};
abstract class Shape{
private Drawing dp;
_____(6);
Shape(Drawing dp){_dp=dp;}
public void drawLine(double x1,double y1,double x2,double y2){
dp.drawLine(xl,yl,x2,y2);}
public void drawCircle(double X,double y,double r){一dp.drawCircle(x,y,
r);}
};
class Rectangle extends Shape {
private double_x1 _x2 _y1,_y2;
public Rectangle(Drawing dp,double x1,double y1,double x2,double y2)
{/*代码省略*/}
public void draw(){/*代码省略*/ }
};
Class Circle extends Shape{
private double_x,_y,_r;
public Circle(Drawing dp,double x,double y,double r){/*代码省略*/
}
public void draw(){drawCi rcle(X,Y,r); )
};
选项
答案
(1)abstract class (2)public abstract void drawLine(double x1,double y1,double x2,double y2) (3)public abstract void drawCircle(double x,double y,double r) (4)DP1.draw_a_circle(x,y,z) (5)DP2.drawcircle(x,y,z) (6)public abstract void draw()
解析
本题考查桥接模式的概念及应用。桥接模式将抽象与其实现解耦,使它们都可以独立地变化。也就是说:将一组实现与另一组使用它们的对象分离。这里的实现指的是抽象类及其派生类用来实现自己的对象(而不是抽象类的派生类,这些派生类被称为具体类)。
Java语言中声明抽象函数用abstract,且每个函数都需要声明访问类型。对照试题2的代码可以看出,空(1)处应填入abstract class。Drawing是一个虚拟基类,里面包含了希望不同策略实现的算法。派生类V1Drawing、V2Drawing都派生自Drawing,对基类中希望实现的算法都作了具体实现,且它们都含有drawLine和drawCircle函数,所以Drawing类中缺失的应该是这两个算法,于是空(2)处应填入public abstract void drawLine(double x1,double y1,double x2,double y2),空(3)处应填入public abstract void drawCircle(double x,doubley,double r)。DP1和DP2中包含了绘制Line和Circle的具体实现的static方法,因此在
V1Drawing、V2Drawing类中可以直接进行调用,空(4)处应填入DP1.draw_a_circle(x,y,z),空(5)处应填入DP2.drawcircle(x,y,z)。Shape类派生出Rectangle和Circle类,里面都含有draw方法,但是具体draw方法的实现却不相同,所以空(6)处应填入public abstract void draw()。
转载请注明原文地址:https://kaotiyun.com/show/1zxZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
将图2-2中(1)和(2)空缺名称填写在对应的解答栏内。按照G.lite的最高速率标准,上传24MB的文件需要多少秒时间?
将图2-2中(1)和(2)空缺名称填写在对应的解答栏内。在本质上,ADSL采用的什么多路复用方式?
阅读以下说明,回答问题1~6。【说明】ADSL是接入Internet的一种宽带技术,如图2-2所示为一台带网卡的PC机采用ADSL接入Internet的网络结构图。
阅读以下说明,回答问题1和问题2。【说明】二层隧道协议L2TP(Layer2TunnelingProtocol)是一种基于点对点协议PPP的二层隧道协议。某网络结构如图2-7所示,采用L2TP来实现网络安全。
阅读以下关于网络应用系统可靠性分析方面的技术说明,根据要求回答问题1至问题4。【说明】可靠性是一个网络应用系统能正常工作的能力,一般用平均故障间隔时间(MTBF)来度量。某网络应用软件研发公司正在开发一个嵌入式实时应用软件——宽带路由器的NanO
认真阅读以下实现VLAN间路由的配置技术说明,根据要求回答问题1至问题6。【说明】当交换机上的VLAN数量很多时,通常会采用路由器快速以太网子接,及IEEE802.1Q封装对VLAN间的数据进行路由。在如图3-12所示的拓扑图中,在交换机
阅读以下基于Linux操作系统部署DHCP服务的技术说明,根据要求回答问题1至问题3。【说明】某地市图书馆内部局域网划分为办公区、电子阅览室、无线阅览室等3个VLAN,并通过一台带防火墙模块的路由器与Internet网互连。为了便于整个局域网IP
在安装RedhatLinux9.0操作系统的过程中,如果没有选择安装Web服务器,Apache服务器则需要手动安装。现从http://httpd.apache.org网站上免费下载了一个apache-2.2.3RPM格式的软件包,请将以下(1)空缺处
在安装RedhatLinux9.0操作系统的过程中,如果没有选择安装Web服务器,Apache服务器则需要手动安装。现从http://httpd.apache.org网站上免费下载了一个apache-2.2.3RPM格式的软件包,请将以下(1)空缺处
在安装RedhatLinux9.0操作系统的过程中,如果没有选择安装Web服务器,Apache服务器则需要手动安装。现从http://httpd.apache.org网站上免费下载了一个apache-2.2.3RPM格式的软件包,请将以下(1)空缺处
随机试题
为什么CO2气体保护焊比焊条电弧焊效率高、焊接接头质量好?
下列内容不是计算机操作系统的功能的是()。
国民收入
求下列函数的定义域:
A.细菌B.四环素类抗生素C.高氟地区居住史D.全身疾患或营养障碍E.梅毒感染釉质发育不全的病因是
某新建项目建设期为3年,第一年年初借款150万元,第二年年初借款300万元,第三年年初借款200万元,年利率6%,则该项目建设期按复利计算的借款利息为()万元。
厂房或仓库应设置排烟设施的场所或部位是()。
关于教育心理学与邻近学科的关系,下列说法正确的是()。
呼吸作用过程中葡萄糖分解的两个途径如图3所示,酶系1、酶系2和酶系3分别存在于()。
Americanswhoremember"thegoodolddays"arenotaloneincomplainingabouttheeducationalsysteminthiscountry.Immigrants
最新回复
(
0
)