小项目---游戏公告

本文介绍了实现一个游戏公告系统的过程,包括玩家登录、退出时的公告通知,以及玩家间的私聊功能。项目使用Socket编程和多线程技术。详细讲解了服务器端接受客户端连接、读写通信的原理,以及解决客户端和服务器端互相等待导致的死锁问题。建议初学者通过实践项目来结合并应用所学知识。
摘要由CSDN通过智能技术生成

功能
当某一玩家登陆进游戏时,服务器会对在线所有玩家发一条公告,告诉所有在线玩家该玩家上线了;
当某一玩家退出游戏时,服务器也会发公告告诉所有在线玩家该玩家下线了;
每一个玩家可以发公告,也可以和某一玩家进行私聊。

涉及的技术
Scoket编程、多线程

实现的思路

  1. 创建两个工程,客户端和服务器端
  2. 服务器端的实现:准备ServerSocket对象,接收客户端连接,得到Socket对象,接收客户端发送的数据,向客户端发送数据
  3. 客户端实现:准备Socket对象,连接到服务器,向服务器发送数据,接收服务器发来的数据

那客户端如何与服务器端进行通信呢?
它们可以通过Socket对象的写入和读取来进行通信。

首先,我们得在服务器实例化⼀个 ServerSocket 对象,表示通过服务器上的端口通信

ServerSocket serverSocket = new ServerSocket(port)

然后服务器再调用ServerSocket 类的 accept() 方法,该方法将⼀直等待,直到客户端连接到服务器上给定的端口

Socket client = serverSocket.accept();

服务器在等待的时候,⼀个客户端实例化⼀个 Socket 对象,指定服务器名称和端口号来请求连接

Socket client = new Socket(ip,port);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值