- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
聊天室系统实训总结
聊天室系统实训总结,沟通是很重要的,下面是带来的聊天室系统实训总结,欢迎阅读!
聊天室系统实训总结【1】
在编写JAVA聊天室的过程中,让我学到了很多东西,有知识方面的,而更多的是经验。
从以前学习C,到现学习JAVA,有很多的地方不习惯。
主要的就是思想不会转变。
但是还是有很多相似的地方,
比如,如何实现心中所想的东西时,很多函数的编写的方法是类似的,而不同的是JAVA多了继承、多态、封装等等
面向对象的东西。
所以在整体构思方面差异比较大,但是细节方面还是类似的。
编写聊天室让我对面向对象的了解算是更进一步了。
首先:聊天室实现的就是聊天;用户与用户之间实现聊天的功能。
然后:对于聊天这个功能如何实现呢?
1、要实现用户与用户之间的交流,必须要有一个通信实体做出“主动姿态”,主动接受来自其他通信实体的连接请求。
这就是服务端。
2、客户端——用于连接到服务端,然后实现用户之间的通信。
所以这里的服务器和客户端便是两个对象,它们能实现用户之间的通信。
对于总体的构思擦不多就是这样。
所以现在需要的便是一步一步的细化下去。
一、服务端
a)服务端如何实现主动接受其他通信实体的连接请求?
b)如何实现客户端之间信息的收发?
c)服务端应该有些什么样的功能呢?
二、客户端
a)如何连接到服务端?
b)客户端应该有些什么样的功能?
当慢慢的思考下去,思想便会慢慢的清楚。
再开始编写的时候,其实头是乱的,摸不着头绪,因为那时候开始的时候便在想:如何写连接?如何写收发信息?如何写连接?等等。
也许这就是学C的时候的习惯思想,那时候写过的最大的程序便是俄罗斯方块,其余的便是在搞算法。
不过当自己慢慢的习惯JAVA的编程思想之后,便是好多了。
对于服务端和客户端的设计
1、服务器端的主要功能:
a)在特定的端口上进行监听,等待客户端连接。
b)默认端口为30000。
c)向已经连接到服务的用户发送系统消息。
d)统计在线人数。
e)当停止服务器时,断开所有的用户连接。
2、客户端的主要功能:
a)连接到已经开启的聊天服务的服务端。
b)用户可以配置连接后显示的用户名。
c)当服务器端开启的话,用户可以随时登陆和注销。
d)用户可以向所有人或者某一个人发送消息。
主要类和方法:
一、服务端:
1、ChatSever便是服务器的主框架了。
包括服务器的属于的定义、
组件的组合、事件的处理等等。
2、ServerListen类是服务端的监听类。
监听客户端是否连接。
3、ServerReceive类是接收和发送客户端、服务端的消息。
4、LNode类封装了用户的属性。
5、UserLinkList类则是封装了对用户操作的方法。
如:添加、查找、删除等;
6ServerHelp类这是帮助板块。
二、客户端
1、Client类则是客户端的主要框架。
2、UserSet类是对用户名的设置和修改。
3、ClientReceive类实现客户端和服务端消息的收发。
4、ClientHelp类这是帮助板块。
(具体代码就不发了,太多了。)
对于聊天室的编写部分已经完成了,接下来便是完善它的功能和修复它的一些BUG。
因为发现有很多地方有BUG:
1、客户端无法接收到服务端发出的系统消息。
2、服务端无法收到客户端下线的消息,导致服务端无法删除以下线的客户端。
所以客户端连接重复。
3、当服务端停止服务时,客户端未断线。
4、客户端不能接收到其他客户端的上线和下线消息。
目前发现的BUG就是以上几个。
同时除了BUG以外,还发现很多的不足:
1、客户端的IP设置是不能改变的,所以当服务端换IP时,客户端需要从源代码中去修改,导致不方便。
2、服务端、客户端没有设置快捷按钮,导致每次启动都要通过“菜单”来启动和连接。
文档评论(0)