java网络编程实践报告

java网络编程实践报告

ID:35241837

大小:169.00 KB

页数:22页

时间:2019-03-22

java网络编程实践报告_第1页
java网络编程实践报告_第2页
java网络编程实践报告_第3页
java网络编程实践报告_第4页
java网络编程实践报告_第5页
资源描述:

《java网络编程实践报告》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、计算机网络实验题目:基于C/S的控制台聊天室姓名:学号:基于C/S的控制台聊天室一、设计目的巩固所学的Java语言基础知识,增进Java语言的编辑基本功,拓展常用类库的应用,使我们通过教学环节与手段,把所学的课程及相关知识加以融会贯通,二、设计内容运用Java程序编写聊天室,实现简单的聊天功能。它是图形界面,线程,流与文件系统等技术的综合应用。其界面主要采用了Java.awt包,Java.swing包等。程序实现了聊天室的基本功能,其中有:1.启动服务器。2.启动登录界面。3.进入客户端界面。4.发送信息。5.离开客户端界面。6.关闭服务器。三、分析1.首先通过继承JFrame类构造

2、服务器界面。使服务器能够为每一个客户启动一个线程,记录客户的上下线行为、登录的IP,发送消息的时刻,监视客户的聊天记录,对于出现不文明的话语,在客户端进行屏蔽,并统计出现不文明用语的次数,超过三次提示警告信息,并将其踢出聊天室。2.设计客户端程序使其能够完成正常的通信功能,并且可以更改背景颜色,设置字体颜色。3.设计登录程序,使其显示登录的IP地址端口号,以及用户昵称,通过登录按钮可以调用客户端程序,实现;聊天功能。四、详细设计程序中引入的包:importjava.net.*;importjava.io.*;importjava.util.*;importjava.awt.event

3、.*;importjava.awt.*;importjava.javax.swing.*;1)服务器端代码中用户自定义的类:类名:Server作用:服务器的启动继承的类:JFrame,构造服务器界面。定义的对象:TextArea文本域Java.awt.List在线客户列表SeverSocket服务器Socket客户端主要成员方法:voidinit()构造服务器端的界面publicvoidactionPerformed(ActionEvente)按钮监听器publicvoidkeyPressed(KeyEvente)键盘监听器类名:start作用:启动服务器的线程继承的类名:threa

4、d主要的成员方法:Publicvoidrun()启动服务器的线程类名:SgService继承的类名:thread主要的成员方法:publicvoidrun()处理单个客户的线程2)用户登录相关的类:类名:login作用:构造登录界面继承的类:JFrame实现的接口:ActionListener构造方法:publiclogin()主要的成员方法:publicvoidactionPerformed(ActionEvente)实现登录和取消按钮的监听器类名:loginStart继承的类:thread主要的方法:publicvoidrun()作用:如果登录成功,则弹出客户端聊天窗口,如果登录

5、失败,则打印出登录失败,以告知客户1)客户端相关的类:类名:Client继承的类:JFrame实现的接口:ActionListener构造方法:publicClient(PrintStreamout,BufferedReaderin,Stringname)主要的成员方法:publicvoidreceive()接受服务端发来的信息五.主要程序源代码//聊天室服务器importjava.net.*;importjava.io.*;importjava.util.*;importjava.awt.event.*;importjava.awt.*;importjavax.swing.*;cl

6、assServerextendsJFrame{privateTextAreamsgA=newTextArea();//服务器用来输入用的文本域privateTextAreaarea=newTextArea();//服务器显示消息的文本域privateTextFieldportT=newTextField("8888");privatejava.awt.Listlist=newjava.awt.List();//在线客户列表privateServerSocketserver;//服务器privateSocketclient;//客户端privateMapc

7、ontainer=newHashMap();//HashMapvoidinit(){Panelp1=newPanel();Panelp2=newPanel();Panelp3=newPanel();Panelp4=newPanel();Panelp5=newPanel();Panelp6=newPanel();Panelp7=newPanel();Panelp8=newPanel();Panelp9=newPanel();Pa

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。