首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和Java代码,填写代码中的空缺,将解答写入答题纸的对应栏内。 【说明】 球类比赛记分系统中,每场有两支球队(Team)进行比赛(Game),分别记录各自的得分。图5-1所示为记分系统的类图。 【Java代码】
阅读以下说明和Java代码,填写代码中的空缺,将解答写入答题纸的对应栏内。 【说明】 球类比赛记分系统中,每场有两支球队(Team)进行比赛(Game),分别记录各自的得分。图5-1所示为记分系统的类图。 【Java代码】
admin
2021-03-24
46
问题
阅读以下说明和Java代码,填写代码中的空缺,将解答写入答题纸的对应栏内。
【说明】
球类比赛记分系统中,每场有两支球队(Team)进行比赛(Game),分别记录各自的得分。图5-1所示为记分系统的类图。
【Java代码】
class Team{
private String name;
private
(1)
;
public Team(String name){
(2)
=name;
}
voidincreamentGoal(){
(3)
;
}
intgetGoals(){
return goals;
}
String getName(){
return name;
}
};
C1ass Game{
private Team a,b; //两支比赛球队
public Game(Team t1,Team t2){
a=t1;
b=t2;
}
void getResults() { //输出比分
System.out.print(a.getName()+ ":"+b.getName()+"=");
System.out.printin(a.getGoals()+":"+b.getGoals());
}
void incrementGoal(
(4)
t) {//球队t进1球
t.inCreamentGoal();
}
public static void main(String^args){
Team t1=new Team("TA");
Team t2=new Team("TB");
Game football=
(5)
;
football.incrementGoal(t1);
football.incrementGoal(t2);
football.getResults(); //输出为:TA:TB=1:1
football.incrementGoal(t2);
football.getResults(); //输出为:TA:TB=1:2
}
};
选项
答案
(1)int goals=0或int goals (2)this.name (3)goals++或++goals或等价表示 (4)Team (5)new Game(t1,t2)
解析
本题考查考生应用Java语言进行程序设计的能力,涉及类、对象、方法的定义和相关操作。要求考生根据给出的案例和代码说明,阅读并完成程序填空。
本题中涉及比赛和球队。根据说明进行设计,题目给出了类图(图5-1类图所示)。
图中类Game和Team之间是聚合关系。Game类有两个public的方法:getResults()
和incrementGoal()分别表示获取比赛结果和某支球队进1球后增加比分;private属性是参加比赛的两支球队。Team类中有3个public方法,分别为本球队进1球后增加得分、获得本队得分和获得球队名称;private的属性为球队名称和得分。球队名采用String类型,得分信息从上下文可知是goals,用int类型。
在Team对象创建时,初始化球队名称和得分。Java中,对象的属性若为基本数据类型int,自动初始化为0,如果有显式初始化执行显式初始化;对象的属性若为引用类型String,自动初始化为null,所以需要在构造器中对球队名称加以显式初始化。其构造器接收球队名称,参数名称与对象的属性名均为name,用this关键字加以区分。其中this关键字用来引用当前对象或类实例,可以用点取属性或行为,即:
this.name=name;
注:没有同名时是否有this.都表示名称所表示的对象属性。
从方法getGoalsoqb return goals;判断,缺少属性goals来表示得分。再从上下文判断,方法increamentGoal()中,表示在比赛中某球队进1球,即goals的值增加1。
创建Game对象表示两支球队的一场比赛。构造器参数为两支球队,用以初始化Game对象的两个属性。方法getResults()用于输出当前比分。方法inerementGoal()用表示一球队进1球,具体是哪支球队由参数给定,所以参数类型为Team。
主控逻辑代码在Game类中程序主入口main()方法中实现。在main()方法中,先创建两支球队(用new关键字),即两个Team类的对象,球队名称分别为“TA”和“TB”,引用名称分别为t1和t2,即:
Team t1=new Team("TA");
Team t2=new Team("TB");
以这两个对象引用名称为参数,创建一场比赛对象(用new关键字),引用名称为football,即:
Game football=new Game(t1,t2);
然后用:
football.incrementGoal(t1);
football.incrementGoal(t2);
分别表示球队TA进一球,球队TB进一球。然后调用getResults()方法输出此时的比分,即:
football.getResults();
然后TB再进一球,再调用getResults()方法输出此时的比分,即:
football.incrementGoal(t2);
football.getResults();
综上所述,空(1)需要定义表示一支球队的得分goals并初始化为0,题目代码中已经给出用分号结尾,所以空(1)为int goals或int goals=0;空(2)需要表示Team对象的name属性,即this.name;空(3)需要表示当前球队得分加1,因为只有一条语句,只要表示goals加1即可,即goals++或++goals(等价表示):空(4)需要表示参数类型为球队,即Team;空(5)处为创建Game类的对象football,需要两个Team类型对象的引用,从其后面语句可知,两个引用名称为t1和t2,即new Game(t1,t2)。
转载请注明原文地址:https://kaotiyun.com/show/N2jZ777K
本试题收录于:
程序员下午应用技术考试题库软考初级分类
0
程序员下午应用技术考试
软考初级
相关试题推荐
某商场记录(统计)销售情况的数据库中,对每一种商品采用了国家统一的商品编码。这种做法的好处不包括(11)________________。
计算机使用了一段时间后,系统磁盘空间不足,系统启动时间变长,系统响应延迟,应用程序运行缓慢,此时,需要对系统进行优化。(28)________________不属于系统优化工作。
计算机病毒是一段程序,一般隐藏在______中。
在Access中,查询“学生”数据表的所有记录及字段的SQL语句是______。
下面记录的是某班36人期末考试的数学成绩:971009596100879610089100936999891008188
在数据库中能够唯一地标识一个记录被称为______。
解决网络安全问题的技术分为主动防御保护技术和被动防御保护技术两大类,__________属于被动防御保护技术。
综合布线系统由6个子系统组成,将图1-1中(1)~(6)处空缺子系统的名称填写在答题纸对应的解答栏内。为满足公司要求,通常选用什么类型的信息插座?
资源记录文件位于/var/named目录下。这个目录是在以上的(1)文件中定义的。从备选选项中选择(6)~(10)处的解答。在问题4的named.abc.net文件中,出现了5种类型的记录。其中SOA是(6),NS是(7),MX是(8),A是
随机试题
A.鹿角状菌丝B.梳状菌丝C.两者都有D.两者都没有毛癣菌()
某二叉树的前序序列为ABCDEFG,中序序列为DCBAEFG,则该二叉树的后序序列为()。
患者,男性,25岁。餐后运动时突发脐周腹痛伴恶心呕吐,并阵发性加重,发病来未排气排便。查体:体温37.3℃,血压88/62mmHg,心率110次/分;左侧腹部隆起,肠鸣音高亢,压痛明显。WBC10.5×109/L。最可能的诊断是
有关青蒿素的结构与活性研究结果表明双氢青蒿素是由
下列各项中,企业不应确认为无形资产的是( )。
关于个人不可循环授信额度,下列说法错误的是()。
根据票据法律制度规定,背书人在汇票上记载“不得转让”字样,其后手再背书转让的,将产生的法律后果是()。
(2010年卷二第92题)王某委托胡某销售一批货物,双方约定胡某不收取报酬。根据合同法及相关规定,下列说法哪些是正确的?
事物的质是指()。
在推进我国反腐倡廉建设的工作上,中国共产党一直坚持不懈地努力着,下列有关说法错误的是:
最新回复
(
0
)