首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
(2013年下半年下午试题六)阅读下列说明和Java代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 欲开发一个绘图软件,要求使用不同的绘图程序绘制不同的图形。以绘制直线和圆形为例,对应的绘图程序如表10.5所示。 根据绘图软
(2013年下半年下午试题六)阅读下列说明和Java代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 欲开发一个绘图软件,要求使用不同的绘图程序绘制不同的图形。以绘制直线和圆形为例,对应的绘图程序如表10.5所示。 根据绘图软
admin
2018-07-27
76
问题
(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://www.kaotiyun.com/show/1zxZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
请指出现有虚拟局域网络的4种划分方式。以下为Cisco以太网交换机Catalyst2924(ws-c2924xlA,拥有24个10/100Mbit/s自适应端口)的VLAN划分命令,请解释(1)~(3)处的标有下划线部分配置命令的含义。(“//”后为
阅读以下有关网络设备安装与调试的叙述,分析设备配置文件,回答问题1~3。虚拟局域网(VirtualLAN)是与地理位置无关的局域网的一个广播域,由一个工作站发送的广播信息帧只能发送到具有相同虚拟网号的其他站点,可以形象地认为,VLAN是在物理局域
将图2-2中(1)和(2)空缺名称填写在对应的解答栏内。目前在使用ADSL访问Internet时,要不要收取电话费?
在由L2TP构建的VPN中,主要由(1)和(2)两种类型的服务器构成。1.将图2-7中(1)和(2)处空缺名称填写在相应位置。2.简要说明两种服务器的主要作用。某路由器(在图2-7中没有标出)的部分配置信息如下所示,请解释其中注明部分的
阅读以下说明,回答问题1和问题2。【说明】二层隧道协议L2TP(Layer2TunnelingProtocol)是一种基于点对点协议PPP的二层隧道协议。某网络结构如图2-7所示,采用L2TP来实现网络安全。
阅读以下关于RIP动态路由配置的技术说明,结合网络拓扑图回答问题1至问题3。[说明]某大学城局域网的网络拓扑结构如图7-18所示,图中路由器R1、R2,R3均运行基于距离矢量算法的RIP路由协议,并且图中给出了路由器R1、R2、R3各端口的IP地
认真阅读下列有关移动用户身份认证技术的说明,根据要求回答问题1至问题4。【说明】随着无线局域网技术、3G移动通信技术的不断发展,网络资源得到了更广泛的利用。由于移动环境下的通信链路比较容易受到恶意攻击或窃听,因此在移动节点与本地代理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)空缺处
随机试题
A、羊水中脂肪细胞比例B、羊水中胆红素值C、B超测双顶径值D、羊水中L/S比值E、羊水中染色体检查检查胎儿肝成熟度用()
患者,女性,28岁,近半年来月经量过多,未予注意。近1周出现头晕、乏力、面色苍白,就诊时发现:Hb80g/L,RBC3.10×1012/L,确诊为缺铁性贫血。应用硫酸亚铁治疗有效的早期表现是
下列不属于项目人力资源管理基本内容的是()。
最早研究群体动力的心理学家是()
我国唐代有“诗仙”李白、“诗圣”杜甫,人称“李杜”。人称“小李杜”的两位诗人分别是()。
廊坊狙击战
某公司以延期付款的方式销售给某商场一批商品,则该商场到期偿还欠款时,货币执行的是()职能。
“1”信号经过物理链路传输后变成“0”信号,负责查出这个错误的是()。
有以下程序 main() { union{ unsigned int n; unsigned char c; }ul; u1.c=’A’; cout<<u1.n<<endl; } 执行后输出结果是
It’snecessaryforhertochangeherdressafterabusyday.Sheneeded______herdressafterabusyday.
最新回复
(
0
)