@Java学习笔记
简易版聊天室(含封装,多线程,IO流)
主要包含以下几个文件
chat为服务器端,需开启服务器才可进行多人聊天
我们在服务器端指定端口,也就是使用ServerSocket创建服务器(端口号可以任意写,但接收端需改为相应的端口号)
chat.java
client.java
因为是多个客户端使用,所以我们需要添加多个线程加上循环,让我们方便碎片式分布时间给各个客户
其中CopyOnWriteArrayList()是系统的一个容器,使用这个容器可以边修改边遍历。
Channel这个容器中添加了我们的客户的基本信息,如姓名,客户输出信息,客户输入信息进行封装
channel中封装了接受消息、发送消息、发给其他人、释放资源的方法
因为需要反复释放资源,我们定义了一个Utils作为工具类,需要时直接调用即可。
send.java与 receive.java其实就是将读写分离,与utils方法类似
以下为源代码:
从最基础的版本开始,后面慢慢完善,内里有备注
简易版聊天室