首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和JaVa代码,将应填入(n)处的字句写在答题纸对应栏内。 【说明】 任何一种程序都是为了解决问题而撰写的,解决问题时需要实现一些特定的运算法则。在策略(strategy)模式下,可以更换实现算法的部分而不留痕迹,切换整个算法,简化改为采用其他
阅读以下说明和JaVa代码,将应填入(n)处的字句写在答题纸对应栏内。 【说明】 任何一种程序都是为了解决问题而撰写的,解决问题时需要实现一些特定的运算法则。在策略(strategy)模式下,可以更换实现算法的部分而不留痕迹,切换整个算法,简化改为采用其他
admin
2014-10-11
74
问题
阅读以下说明和JaVa代码,将应填入(n)处的字句写在答题纸对应栏内。
【说明】
任何一种程序都是为了解决问题而撰写的,解决问题时需要实现一些特定的运算法则。在策略(strategy)模式下,可以更换实现算法的部分而不留痕迹,切换整个算法,简化改为采用其他方法来解决同样问题。以下是一个“剪刀石头布”游戏。猜拳时的“策略’’有2种方法:第一种是“猜赢后继续出同样的招式,(winningStrategy),第二种是“从上一次出的招式种,以概率分配方式求出下一个招式的几率”(ProbStrategy)。程序中定义了Hand类表示猜拳时的“手势”,类内部以0(石头)、1(剪刀)、2(布)来表示。Hand类的实例只会产生3个。以下是JaVa语言实现,省略了不相关属性及方法,方法实现体亦有所省略,能够正确编译通过。
【Java代码】
//Hand.Java文件
publiC class Hand{
public static final int HANDVALUE—GUU=0;/石头
public static final int HANDVALUE—CHO=1;//剪刀
public static final int HANDVALUE—PAA=2;//布
public static final Hand[]hand={
new Hand(HANDVALUE_GUU),
new Hand(HANDVALUE—CHO),
new Hand(HANDVALUE—PAA),
};
private int handvalue;
(1) Hand(int handvalue){
this.handvalue=handvalue;
}
publ ic(2)Hand getHand(int handvalue){//从值取得对象实例
return hand fhandvalue]:
}
}
//Strategy.java文件
public interface Strategy(
public (3)Hand nextHand();
}
//ProbStrategy。Java文件
import java.util.Random;
public class ProbStrategy implements Strategy(
public Hand nextHand(){
int handvalue=0;
/*省略具体实现*/
return Hand.getHand(handvalue);
}
}
//WinningStrategy.Java文件
import java/util.Random;
public class WinningStrategy implements Strategy{
/*省略了不相关属性*/
public Hand nextHand(){
if(!won){
prevHand=Hand.getHand(random.nextInt(3));
}
return prevHand;
}
}
//Player.Java艾件
public class Player{
private string name;
private strategy strategy;
public Player(string name,(4)strategy){
this.name=name;
this.strategy=strategy;
}
public Hand nextHand(){//向战略请示手势
return(5);
}
}
选项
答案
(1)private (2)static (3)abstract (4)Strategy (5)strategy.nextHand()
解析
Hand类要保证只产生3个实例,就要求不能随便生成Hand类,因此其构造方法需要是private型的,故空(1)填private。先看空(3),nexthand0是接口Strategy~方法,应为抽象方法,故空(3)应填abstract。再来看空(2),由对getHand()方法的调用方式Han@D@getHand(handValue)及Han@D@getHand(random.nextInt(3)),可知该方法是类Hand的静态方法,故空(2)应填static。由语句this.strategy=strategy;可知:this.strategy与strategy是同数据类型,this表示自身引用,而this.strategy是Strategy类型,故空(4)应填Strategy。方法nextHand0是“向战略请示手势”,取得手势是通过其所采用的“策略”实现的,故空(5)应填strategy.nextHand0。
转载请注明原文地址:https://kaotiyun.com/show/B4DZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
在C程序中,对于如下的两个for语句,其运行后a和b的值分别为________。for(inta=0;a=0,a++);for(intb=0;b=0;++b);
阅读以下说明和交换机的配置信息,回答问题1至问题3,将解答填入答题纸的对应栏内。[说明]某公司设3个部门,为了便于管理,每个部门组成1个VLAN,公司网络结构如图9-4所示。[交换机Switch1的部分配置信息]Switch
限制MailUser邮件主机里每个用户的邮箱大小不超过10MB,如何配置?如何设定邮件自动转发?如果向多个邮件地址进行邮件自动转发,如何设置?
阅读以下说明,回答问题1至问题7。[说明]在IMail管理器中,选中MailUser邮件主机,然后在它右边的面板中选中General选项卡,出现邮件主机的配置窗口如图3-1所示。如果在IMail管理器中,选中Userl用户,然后在
同一个VLAN中的成员可以形成一个广播域,从而实现何种功能?使Switch1的千兆端口允许所有VLAN通过的配置命令如下,请给出空白处的配置内容:Switchl(config)#interfacegigabit0/1(进入千兆端口配置模式)
SSL协议使用(1)密钥体制进行密钥协商。在IIS5.0中,Web服务器管理员必须首先安装Web站点数字证书,然后Web服务器才能支持SSL会话,数字证书的格式遵循ITU-T(2)标准。通常情况下,数字证书需要由(3)颁发。如果Web服务器管理员希望W
网络设计流程通常由以下五个阶段组成:A.确定网络物理结构B.确定网络逻辑结构C.对现有网络的体系结构进行分析D.安装和维护E.需求分析根据网络开发设计的过程,给出上述五个阶段的先后排序:(1)。有线
在“管理工具”中运行“管理IP筛选器列表”,创建一个名为“SNMP消息”的筛选器。在如图12-3所示的“IP筛选器向导”中指定IP通信的源地址,下拉列表框中应选择(1);在如图12-4中指定IP通信的目标地址,下拉列表框中应选择(2)。在图
随机试题
大豆的原产地是巴西。()
Man:DoIhavethepleasuretobuyyouadrink?Woman:______
A.美托洛尔B.呋塞米C.卡托普利D.氨氯地平E.可乐定属于血管紧张素转化酶抑制药的是
甲公司以试用买卖方式促销A冰箱,规定试用期3个月,如发现冰箱有质量问题,公司随时给予更换。乙与甲公司签订试用买卖合同,时间自1999年3月15日开始。至1999年6月16日,甲公司要求乙付款,乙称冰箱有质量问题,要求解除试用合同。下列陈述正确的是:
企业增发新股,企业的股本或实收资本金额增加,但是所有者权益总额不发生变化。()
下列各项中,属于营业税计税依据的是()。
在职称评审过程中,各级评审组织几乎无法看到申报人的艺术实践能力,只能看到表格栏目里的论文和项目。在唯论文是重的标准下,音乐理论的教师还能体现一些真才实学,而表演艺术的教师则只能扬短避长、_________。填入画横线部分最恰当的一项是(
委付
"Themoregadgetsthereare,the【C1】______thingsseemtoget."saidHonoreErvin,co-authorofTheEtiquetteGirls:ThingsYou
Therelianceoncreditreportsinhiringisbecomingwidespread.AsurveybytheSocietyforHumanResourceManagementfoundt
最新回复
(
0
)