综合实验二--基于Java的局域网聊天室

更新时间:2024-04-22 14:19:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

实验报告封面

课程名称: 面向对象设计与编程 课程代码: SW2007

任课老师: 谭翔纬 实验指导老师: 谭翔纬

实验报告名称: 综合性实验二-基于Java的局域网聊天室

学生姓名:

学号: 教学班: 递交日期:

签收人:

我申明,本报告内的实验已按要求完成,报告完全是由我个人完成,并没有抄袭行为。我已经保留了这份实验报告的副本。

申明人(签名):

实验报告评语与评分:

评阅老师签名:

实验题目 实验地点及组别 基于Java的局域网聊天室 实验时间 一、实验目的和要求 1、目的 ? 套接字的使用 ? 数据报通信 ? URL类和URLConnection类的使用 2、要求 利用Java实现基于C/S模式的聊天室程序。聊天室分为服务器端和客户端两部分,服务器端程序主要负责侦听客户端发来的消息,客户端需登录到服务端才可以实现正常的聊天功能。 1、 服务器端的主要功能: ? 在特定的端口上进行侦听,等待客户端连接 ? 用户可以配置服务器端的侦听接口,默认端口为8888 ? 向已连接到服务器端的用户发送系统消息 ? 统计在线人数 当停止服务时,断开所有的用户连接 2、 客户端主要功能 ? 连接到已经开启聊天服务的服务端 ? 用户可以配置要连接服务器端的IP地址和端口号 ? 用户可以配置连接后显示的用户名 ? 当服务器端开启时,用户可以随时登录与注销 ? 用户可以向所有人或者某一个人发送消息 服务器端和客户端设置: 私聊: 群聊: 二、实验环境(本实验的硬件和软件环境及使用仪器等) 计算机+MyEclipse+jdk1.7 三、实验实现过程 服务器端设计: 1、 ChatServer.java:主要功能是定义服务器端的界面,添加事件侦听与事件处理。ChatServer类调用ServerListen类来实现服务端用户上线与下线的侦听,调用ServerReceive类来实现服务器端的消息收发。 2、 ServerListen.java:实现服务端用户上线与下线的侦听,主要通过用户链表类UserLinkList来实现,当用户的上线与下线情况发生变化时,该类会对主类的界面进行相应的修改。 3、 ServerReceive.java:实现服务器消息的收发。该类分别定义了向某个用户及所有人发送消息的方法,发送的消息会显示在主类界面上。 4、 PortConf.java:用户对服务器侦听接口进行修改配置的类。 5、 Node.java:用户链表的节点类,定义了链表中的节点类。 6、 UserLinkList.java:用户链表节点的具体实现类。该类通过构造方法构造用户链表,定义了添加用户、删除用户、返回用户数、根据用户名查找用户和根据索引查找用户5个方法。 7、 Help.java:服务器端的帮助类。 客户端设计: 1、 ChatClient.java:主要功能是定义客户端的界面,添加事件侦听与事件处理。该类还定义了Connect()与DisConnect()方法实现与服务器的连接和断开连接。当用户登录到指定服务器时,ChatClient类调用ClientReceive类实现消息收发,同时ChatClient类还定义了SendMessage ()方法来向其他用户发送带有表情的消息或者悄悄话。 2、 ClientReceive.java:该类实现服务器端与客户端消息收发。 3、 ConnectConf.java:是用户对所要连接的服务器IP及侦听接口进行配置的类。 4、 UserConf.java:是用户对连接到服务器时所显示的用户名进行修改配置的类。 5、 Help.java:客户端程序的帮助类。 (代码附后) 四、实验结果、分析、总结 五、实验教师评语及成绩: 教师签名: 批阅时间 年 月 日

本文来源:https://www.bwwdw.com/article/p6wp.html

Top