一 需求分析
编写一个小型Java聊天室系统,掌握Java网络通信、多线程、IO文件操作等高级应用编程技能。
完成如下功能:
多客户端模式下,实现客户与客户的单独通信,要求信息通过服务器中转;
端到端的通信,实现并行通信模式(一端的信息发送不受另一端的影响);
添加图形界面.
二 程序设计
2.1 设计思想利用socket套接字通信
多线程处理不同任务
用Properties在本地存储注册账号
下载安装windowbuilder插件并用其设计图形界面
2.2 整体设计(类之间关系)Server类(服务器),包含几个继承Runnable的内部类,用于处理客户端请求
Client类、Login类、TalkFrame类、Regist类。Login类用于登陆,Regist类用于注册,TalkFrame类用于对话,Client实例则被这三个类调用
Account类,这个类很简单,只有id和password两个属性和相应的set方法。
类之间关系如下图所示:
2.3 类的设计Client类中只定义了Login、Regist、TalkFrame中需要的socket和流,和 对这些属性初始化的构造函数。
Login类用于登陆,包含账号label、密码label、账号JTextField、密码 JPasswordFie