首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和Java代码,填补代码中的空缺,将解答填入答题纸的对应栏内。 【说明】 以下Java代码实现一个简单的聊天室系统(ChatRoomSystem),多个用户(User)可以向聊天室(ChatRoom)发送消息,聊天室将消息展示给所有用户。类图如
阅读以下说明和Java代码,填补代码中的空缺,将解答填入答题纸的对应栏内。 【说明】 以下Java代码实现一个简单的聊天室系统(ChatRoomSystem),多个用户(User)可以向聊天室(ChatRoom)发送消息,聊天室将消息展示给所有用户。类图如
admin
2017-11-28
71
问题
阅读以下说明和Java代码,填补代码中的空缺,将解答填入答题纸的对应栏内。
【说明】
以下Java代码实现一个简单的聊天室系统(ChatRoomSystem),多个用户(User)可以向聊天室(ChatRoom)发送消息,聊天室将消息展示给所有用户。类图如图5—1所示。
【Java代码】
class ChatRoom{
public static void showMessage(User user,String message){
System.out.println(“[”+user.getName()+”]:”+message);
)
}
Class User{
private String name;
public String getName(){
return name;
}
public void setName(String name){
this.name=name;
}
public User(String name){
(1). =name;
}
public void sendMessage(String message)(
(2)(this,message);
}
}
public class ChatRoomSystem {
public void startup(){
User zhang=new User(“John”);
User 1i=new User(“Leo”);
zhang.sendMessage(“Hi!Leo!”);
li.sendMessage(“Hi!John!”);
}
public void join(User user){
(3)(“Hello Everyone!I am”+user.getName());
}
public static void main(String[]args)(
chatRoomsystem crs = (4) ;
crs.startup();
crs.join((5)(“Wayne”));
}
}
/*
程序运行结果:
[John] :Hi!Leo!
[Leo]:Hi!John!
[Wayne]:Hello Everyone!I am Wayne
*/
选项
答案
(1)mis.name (2)ChatRoom.showMessage (3)user.sendMessage (4)new ChatRoomSystem0 (5)new User
解析
本题考查Java语言程序设计的能力,涉及类、对象、对象方法和静态方法的定义和使用。要求考生根据给出的案例和代码说明,认真阅读理清程序思路,然后完成题目。题目所给代码较短,较易理清思路。
先考查题目说明,实现一个简单的聊天室系统(ChatRoomSystem),多个用户(User)可以向聊天室(ChatRoom)发送消息,聊天室将消息展示给所有用户。根据说明进行设计,题目说明中图5-1的类图给出了类ChatRoomSystem、User、ChatRoom之间的关系。ChatRoom作为中介器,处理User对象之间的所有消息交互,即User向ChatRoom发送消息,ChatRoom负责将消息显示给所有的User对象。User对象使用ChatRoom的方法分享其消息。
ChatRoom中定义了一个静态方法,即类方法,使所有调用者直接通过类来访问此方法,无须创建对象。静态方法用关键字static修饰,参数接收User对象和消息内容,加以显示。
public static void showMessage(User user, String message) {…}
在Java中,static方法直接通过类名ChatRoom来访问,即:
ChatRoom.showMes sage(…)
User类中定义私有属性name及其get和set方法,通过User类的构造器创建对象,赋给新建对象的name属性值。构造器参数和对象的属性区分方式用this关键字。User类的对象发送消息时提供对象自身,用this表示,以及消息内容,字符串表示,调用ChatRoom中的静态方法showMessage,即:
ChatRoom.showMessage(this, message);
ChatRoomSystem类实现聊天室系统,包含入口方法main,实现启动初始化聊天和聊天过程中加入新聊天用户(聊天过程中的退出等实现类似)。在main方法中,创建ChatRoomSystem对象,然后调用startup方法(crs.startup()),初始化加入一些用户(字符串用户名:“John”和“Leo”)并发送问候消息,即:
User zhang=new User(“John”);
USer]i=new USer(“Leo”);
zhang.sendMessage(“Hi!Leo!”);
li.sendMessage(“Hi!John!”);
调用join方法加入(crs.join)用户“Wayne”,并由此用户对象发送问候消息,即:
user.sendMessage(“Hello Everyone!I am”+user.getName());
Java中创建对象采用new关键字,如果类中没有定义构造器,则编译器会自动创建一个不带参数的缺省构造器。ChatRoomSystem中没有定义构造器,所以对象创建方式为:
new ChatRoomSys tem()
User的对象创建为:
new User(字符串用户名)
综上所述,空(1)需要标识当前对象的name属性,即this.name:空(2)调用类ChatRoom的静态方法showMessage,即ChatRoom.showMessage:空(3)需要表示user对象调用发送消息的方法sendMessage,即user.sendMessage:空(4)需要用new关键字调用缺省构造器,即new ChatRoomSystem();空(5)处为采用new关键字调用User类的构造器方法创建User类的对象,即new User。
转载请注明原文地址:https://kaotiyun.com/show/i9jZ777K
本试题收录于:
程序员下午应用技术考试题库软考初级分类
0
程序员下午应用技术考试
软考初级
相关试题推荐
删除Windows中某个应用程序的快捷方式,意味着(39)。
某企业的大数据工程项目包括如下四个阶段的工作:①数据获取,②数据清洗与整理,③数据分析,④数据展现。一般来说,工作量较大、花费时间较长的阶段是______(1),技术含量最高的阶段是______(2),准备向有关部门递交成果的阶段是______(3)。
在Excel的A1单元格中输入函数“=6+16+MAX(16,6)”,按回车键后,A1单元格中显示的值为__________。
在Access2007中,若要想查询所有姓名为2个汉字的学生记录,应在准则中输入______。
某工厂信息处理技术员设计了如下统计表:该表设计中包含的问题以及改进方法是______。
小张为本企业录入一篇领导讲话文稿。文稿中引用了该企业2008年的销售额和各产品的利润等数据。小张考虑到目前是2010年,从信息的实效性出发,决定对文稿中的这部分内容进行处理,则______做法最为恰当。
计算机在接通电源后,系统首先由(41)程序对内部每个设备进行测试。
解决网络安全问题的技术分为主动防御保护技术和被动防御保护技术两大类,__________属于被动防御保护技术。
ASP是(1)网页制作技术。A.动态B.静态从以下备选答案内为程序中(5)~(9)处空缺部分选择正确答案。(5)A.CreatObjectB.ConnectC.ExecuteSQLD.Open()(6)A.<body>
[说明]请根据网页显示的效果图,将HtML文本(n)处的解答填写在相应的解答栏内。[上图网页中的元素说明][HTML文档代码]<!DOCTYPEHTMLPUBLIC“-//W3C//DTDHTML
随机试题
投资者5月4日购入的欧式期权5月15日到期,在以下时间投资者可以执行期权()。Ⅰ.5月14日Ⅱ.5月15日Ⅲ.5月16日
绘制样图时,国家规定有九种线型。
糖尿病最重要的微血管病变是
7岁女性患儿,2周前患感冒,近2日发热达38.5℃左右,述说关节疼,查体前臂屈侧有环形红斑,听诊心率130次/分,心尖区有收缩期杂音。
可能的诊断是常见的并发症是
女,26岁,初孕妇。妊娠42周,无宫缩来院就诊。查子宫高度32cm,枕左前位,胎头已衔接,胎心率120次/分,进行缩宫素激惹试验,宫缩时重复出现晚期减速。本例应考虑的病因是
下列电缆中,属于阻燃型仪表电缆的是()。
交通肇事罪是指违反公路、水路交通运输管理法规,因而发生重大事故,致人重伤、死亡或者使公私财产遭受重大损失的行为。根据定义,下列属于交通肇事罪的是()。
材料1:4岁的豆豆和爸爸在电话中交谈的内容如下:父亲:豆豆,妈妈在家吗?豆豆:(不说话,点头)父亲:豆豆,我可以和妈妈说话吗?豆豆:(再次不说话,点头)材料2:l6岁的成成在某个星期天的早晨醒来时,发现在她的下巴上长了一粒很大的痘
SingingAlarmsCouldSavetheBlindIfyoucannotsee,youmaynotbeabletofindyourwayoutofaburningbuilding--andtha
最新回复
(
0
)