首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和Java代码,将应填入(n)处的字句写在对应栏内。 【说明】 某绘图系统存在point、line、square三种图元,它们具有Shape接口,图元的类图关系如图13-12所示。现要将circle图元加入此绘图系统以实现功能扩充。已知
阅读以下说明和Java代码,将应填入(n)处的字句写在对应栏内。 【说明】 某绘图系统存在point、line、square三种图元,它们具有Shape接口,图元的类图关系如图13-12所示。现要将circle图元加入此绘图系统以实现功能扩充。已知
admin
2010-01-15
65
问题
阅读以下说明和Java代码,将应填入(n)处的字句写在对应栏内。
【说明】
某绘图系统存在point、line、square三种图元,它们具有Shape接口,图元的类图关系如图13-12所示。现要将circle图元加入此绘图系统以实现功能扩充。已知某第三方库已经提供了XCircle类,且完全满足系统新增的Circle图元所需的功能,但XCircle不是由 Shape派生而来的,它提供的接口不能被系统直接使用。代码13-2既使用了XCircle又遵循了Shape规定的接口,既避免了从头开发一个新的Circle类,又可以不修改绘图系统中已经定义的接口。代码13-3根据用户指定的参数生成特定的图元实例,并对之进行显示操作。绘图系统定义的接口与XCircle提供的显示接口及其功能如表13-5所示。
【代码13-2】
class Circle (1) {
private (2) pxc;
public Circle(){
pxc=new (3);
}
public void display(){
pxc. (4);
}
}
【代码13-3】
public class Factory{
public (5) getShape Instance(int tyoe){ //生成特定类实例
switch(type){
case 0: return new point();
case 1: return new Rectangle();
case 2: return new line();
case 3: return new Circle();
default: return null
}
}
};
public class App{
public static viod main(String argv[]){
if(argv. length!=1){
system. out. println("error parameters!");
Return;
}
int type=(new Integer(argv[0])). intValue();
Factory factory=new Factory();
shape s;
s=factory. (6);
if(s==null){
system.out. println("Error get instance!");
Return;
}
s.display();
return;
}
}
选项
答案
(1)implements Shape (2)XCircle (3)XCircle() (4)displayIt() (5)Shape (6)getShapeInstance(type)
解析
本题是一个Java程序设计题,它考查的知识点是面向对象中接口方面的知识。接口实际上是一个特殊的类,这个类中的成员函数只有声明部分,没有实现部分。这很类似于一个框架,即框架里没有任何实在的东西。在接口的实现类中才把具体要实现的东西写出来。
在看程序之前,先要看清楚题目的要求。题目要求写一个Circle类,要求这个类具有 Shape接口的特性,而且不想让考生自己动手重新写一个circle类,因为系统中已经有了一个XCircle类,这个类能满足系统的要求。当我们知道题目的要求后,就可以进行分析了。要使Circle具有Shape的特性,则它必须是Shape的实现类,所以第(1)空应填: implements Shape!。但是我们如何利用XCircle类呢?其实代码13-2中零星的一些语句给了我们很大的提示,从这些语句我们可以得知程序声明了一个私有成员,并在构造函数中给它分配了存储空间,即new...。且在display()方法中调用了这一成员的什么方法。分析到这里,问题已经很清楚了,我们可以在Circle类中生成一个.XCircle类的实例,然后在 Circle类的显示图元方法中,调用XCirele类实例的显示图元方法,达到题目的要求,所以 (2)应填:XCircle,(3)应填:XCirele(),(4)应填:displayIt()。
接下来看代码13-3。这里考察的是接口的应用。我们如果了解一条原则,问题就好办了。如果有接口A,A中声明了一个方法run()。它有三个实现类:AA、AB和AC。现在这三个类分别有一个实例为:AA1、AB1和AC1。现在有:A A1。则:A1=AA1,A1= AB1,A1=AC1,A1.run()这些写法都是合法的,而且如果有A1=AA1,则A1.run()调用的是AA1的方法run()。接着我们看代码13-3的(5)空。这一空是定义了方法 getShapeInstance的返回值类型,因为返回值是四种类型的实例,但这些实例的类都实现了接口Shape,所以此空应填:Shape。(6)空调用getShapeInstance()从而生成一个给定类型的实例,调用格式为:getShapelnstance(type)。
转载请注明原文地址:https://www.kaotiyun.com/show/UcDZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
设有学生实体Students(学号,姓名,性别,年龄,家庭住址,家庭成员,关系,联系电话),其中“家庭住址”记录了邮编、省、市、街道信息;“家庭成员,关系,联系电话”分别记录了学生亲属的姓名、与学生的关系以及联系电话。学生实体Students中的“
下图是一个软件项目的活动图,其中顶点表示项目里程碑,连接顶点的边表示包含的活动,则里程碑(49)没有按时完成会影响整个项目的进度。若活动0→2完成后,停止3天才开始活动2→6,则完成整个项目的最少时间是(50)天。(49)
下图为某设计模式的类图,类State和Context的关系为(49),类(50)是客户使用的主要接口。(50)
模块A、B和C都包含相同的5个语句,这些语句之间没有联系,为了避免重复,把这5个语句抽取出来组成一个模块D,则模块D的内聚类型为(39)内聚。以下关于该类内聚的叙述中,不正确的是(40)。(39)
某企业生产流水线M共有两位生产者,生产者甲不断地将其工序上加工的半成品放入半成品箱,生产者乙从半成品箱取出继续加工。假设半成品箱可存放n件半成品,采用PV操作实现生产者甲和生产者乙的同步可以设置三个信号量S、S1和S2,其同步模型如下图所示。 信号量
某企业研发信息系统的过程中,______不属于数据库管理员(DBA)的职责。
在以阶段划分的编译器中,符号表管理和()贯穿于编译器工作始终。
以下关于防火墙功能特性的说法中,错误的是______。
对于逻辑表达式(((a|b)‖(c>2))&&d<0),需要________________个测试用例才能完成条件组合覆盖。
在一个完整的功能测试过程中,______不属于应该编写的测试文档。A.测试需求文档B.测试用例文档C.测试标准D.问题报告单
随机试题
背景资料:某医院门诊楼,位于市中心区域,建筑面积为28326m2,地下1层,地上10层。檐高为33.7m。框架一剪力墙结构,筏板基础。2012年3月15日开工,外墙结构及装修施工均采用钢管扣件式双排落地脚手架。事件一:工程施工至结构四层时,该地区发生了
某患者,男性,26岁。发热,咳嗽,咳白痰7天,胸闷、气促2天。有同性恋史。查体:体温38.7℃,呼吸36次/min,口唇发绀,两肺底可闻及少量湿啰音。化验:血白细胞4.5×109/L,N0.8,L0.2。PaO230mmHg。X胸片示两下肺不规则条索状阴影
女性,25岁。因颜面部皮疹、双下肢水肿2年,尿量减少2周入院。查体:BP150/90mmHg,颜面部斑丘疹呈蝶翼样分布,双下肢可凹性水肿。检查:尿沉渣镜检RBC满视野,尿蛋白定量6.5g/d,血清白蛋白27.8g/L,血肌酐254umol/L。血C3下降
工人在夜间施工导致的施工降效费用应属于()。
公司债券的信用评级,应当委托有评级资质的资信评级机构进行。()
在信息技术与课程整合中,强调信息技术服务于学科的内在需求,服务于具体的任务。()
设α1,α2,...,αs均为n维列向量,A是m×n矩阵,下列选项正确的是
AlthoughIaminperfecthealth,andinpossessionofavalidclass-oneCaliforniadrivinglicense,Iamrunning【C1】______prob
WelcometoVirginiaPleasecometofeelthewarmthofaVirginiawelcomefromtheBlueRidgeMountainstotherollingAtlant
Fewpeopledoubtthefundamentalimportanceofmothersinchild-rearing,butwhatdofathersdo?Muchofwhattheycontributeis
最新回复
(
0
)