Java实训项目象棋设计报告.docx
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
标准化管理处编码[BBX968T-XBB8968-NNJ668-MM9N] 标准化管理处编码[BBX968T-XBB8968-NNJ668-MM9N] Java实训项目象棋设计报告全文共10页,当前为第1页。Java实训项目象棋设计报告 Java实训项目象棋设计报告全文共10页,当前为第1页。 广西科技大学鹿山学院 面向对象程序设计实训报告 题 目: 网络中国象棋 系 别: 电气与计算机工程系 专业班级: 计软141班 姓 名: 邓康言 学 号: 成绩评定: 指导教师签字: Java实训项目象棋设计报告全文共10页,当前为第2页。 2016 年 1 月10 日 Java实训项目象棋设计报告全文共10页,当前为第2页。 目录 目录 需求分析 开发的背景 ·中国象棋有着悠久的历史,象棋爱好者更是不计其数,但是由于人们的工作地点从、时间的限制,原始的那种面对面的下棋方式已经不再适应人们的生活,人们已经开始走向网络象棋博弈 ·网络象棋有着很多的优点,通过网络象棋,对弈的双方是网络上任意的两个象棋爱好者,甚至是不认识。网络让对弈的范围更加的广泛,让象棋爱好者可以与更多的象棋爱好者切磋棋艺。 算法 ·指定服务器端口号 ·支持多人同时在线 · ·显示在线用户信息 ·显示当前在线所有用户 ·从在线用户列表中选择玩家进行挑战 Java实训项目象棋设计报告全文共10页,当前为第3页。·接受或拒绝挑战 Java实训项目象棋设计报告全文共10页,当前为第3页。 要求 ·用Java语言实现系统,源程序要有适当的注释,使程序容易阅读 ·函数功能要划分好(结构化程序设计) ·可以增加新功能模块 总体分析与设计 总体设计方案 ·系统功能模块图: 功能描述 服务器端 ·可以指定服务器端口号。 ·可以支持多人同时在线。 ·可以显示在线用户信息。 ·不允许玩家同名 客户端 ·能够通过主机IP号及端口号登陆到服务器。 ·可以显示当前在线所有用户。 ·可以从在线用户列表中选择玩家进行挑战。 ·可以接受或拒绝挑战。 Java实训项目象棋设计报告全文共10页,当前为第4页。·如果对方在和其他玩家对弈中,则应该给与相应的提示信息。 Java实训项目象棋设计报告全文共10页,当前为第4页。 ·象棋规则一定要严密。 ·棋子样式采用最普通的橡胶式象棋。棋子为黑色,字为红色和白色 算法设计---- 本程序功能模块根据程序设计的需要。综合程序的实用性、智能化的考虑。将程序划分为8个模块来写。 (1)服务器端的框架设计类 (2)服务器线程类 (3)服务器代理线程类 (4)棋子类的开发类 (5)客户端的框架设计类 (6)客户端线程类 (7)棋子的规则类 (8)棋盘的设计类 系统流程图---- 3、 数据结构设计 功能模块的设计 服务器端框架类设计 Java实训项目象棋设计报告全文共10页,当前为第5页。import .*; Java实训项目象棋设计报告全文共10页,当前为第5页。 import .*;;;;etImage(); (image); (jspz);; import .*; import .*; import .*; import .*; public class ServerThread extends Thread { Server father; ; import .*;;;;rim();quals(name)) { isChongMing=true;."); } } Java实训项目象棋设计报告全文共10页,当前为第6页。 } Java实训项目象棋设计报告全文共10页,当前为第6页。 } catch(IOException e) { (); } } 服务器代理线程类功能及实现:服务器代理线程主要是用于接收客户端传来的信息,并将该信息转发给相对应的另一个客户端。服务器为所有客户端都分配了一个该类线程,单独为特定客户端进行服务。同时每一个服务器代理线程都有能位移标示其的名称 棋子的开发类设计 import .*; import .*; import .*; public class QiZi ; import .*; Java实训项目象棋设计报告全文共10页,当前为第7页。import .*; Java实训项目象棋设计报告全文共10页,当前为第7页。 import .*; import .*; public class XiangQi extends JFrame implements ActionListener ; import .*; import .*; import .*; import .*; public class ClientAgentThread extends Thread { XiangQi father;rim();rim().length()! 【Java实训项目象棋设计报告】是一份关于利用Java编程语言设计实现网络中国象棋的实训项目报告。该项目旨在提供一个在线对弈平台,让用户能够跨越时间和空间限制,享受象棋博弈的乐趣。以下是对报告中涉及的主要知识点的详细说明: 1. **需求分析**: - **开发背景**:由于现实生活中的面对面下棋方式受限于时间和地点,网络中国象棋的出现满足了广大象棋爱好者的远程对战需求,扩大了对弈范围,增强了社交互动。 - **功能需求**:包括指定服务器端口号、支持多人同时在线、显示在线用户信息、选择玩家挑战、接受或拒绝挑战等。 2. **算法设计**: - **服务器端**:负责指定端口号、管理在线用户、处理并发连接,确保不同用户间的信息正确传递,同时不允许玩家同名。 - **客户端**:需要能登录服务器、查看在线用户、发起挑战、响应挑战请求,以及在对手对战中时给出提示。 3. **系统模块设计**: - **服务器端框架设计**:构建服务器的基础架构,处理客户端的连接请求。 - **服务器线程类**:为每个客户端创建独立的线程,处理与特定客户端的通信。 - **服务器代理线程类**:转发客户端之间的消息,确保信息准确无误地送达。 - **棋子类开发**:实现棋子的表示和操作逻辑,可能包括棋子的移动规则等。 - **客户端框架设计**:构建用户界面,提供交互功能。 - **客户端线程类**:处理客户端的事件,如用户操作、游戏状态更新等。 - **棋子规则类**:定义象棋的规则,如合法移动、吃子等。 - **棋盘设计类**:实现棋盘的可视化展示,包括棋子的位置和颜色。 4. **数据结构设计**: - 数据结构的选择和设计对于高效存储和检索用户信息、棋局状态至关重要。可能包括使用数组或链表来存储在线用户列表,用队列或堆栈处理并发请求,以及用二维数组或特殊数据结构表示棋盘状态。 5. **系统流程**: - 包含用户登录、信息交换、挑战响应等步骤,涉及到网络通信、多线程协作和游戏逻辑的执行。 6. **编程规范**: - 使用Java语言实现,要求代码有良好的可读性,通过适当的注释和结构化程序设计。 - 提供扩展性,允许添加新的功能模块。 这个实训项目涵盖了网络编程、多线程技术、数据结构、游戏逻辑等多个方面的知识,旨在提升学生实际编程和系统设计的能力。通过这个项目,参与者可以深入理解网络应用开发的复杂性和趣味性,同时提高他们的Java编程技能。
- 粉丝: 105
- 资源: 9354
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- Centos7.x通过RPM包升级OpenSSH9.6最新版 升级有风险,前务必做好快照,以免升级后出现异常影响业务
- Centos7.x通过RPM包升级OpenSSH9.9最新版 升级有风险,前务必做好快照,以免升级后出现异常影响业务
- Centos7.x通过RPM包升级OpenSSH9.8最新版 升级有风险,前务必做好快照,以免升级后出现异常影响业务
- Centos7.x通过RPM包升级OpenSSH9.7最新版 升级有风险,前务必做好快照,以免升级后出现异常影响业务
- 机器人开发的操作案例练习
- Centos6.x通过RPM包升级OpenSSH9.7最新版 升级有风险,前务必做好快照,以免升级后出现异常影响业务
- Centos6.x通过RPM包升级OpenSSH9.8最新版 升级有风险,前务必做好快照,以免升级后出现异常影响业务
- Centos6.x通过RPM包升级OpenSSH9.9最新版 升级有风险,前务必做好快照,以免升级后出现异常影响业务
- 软考冲刺的基本内容和操作
- Centos8.x通过RPM包升级OpenSSH9.8(openssl-3.0) 升级有风险,前务必做好快照,以免升级后出现异常影响业务