java课程设计 博客园_Java课程设计

该博客介绍了Java飞行棋课程设计。小组完成的飞行棋有登录、注册功能,数据存于MySQL数据库,有多种游戏模式。作者负责登录、注册及数据库操作,还实现4种道具功能。通过课程设计,作者加深了对数据库和Java的理解,提高了综合解决问题的能力。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.团队课程设计博客链接

2.实现的功能

我们小组所完成的飞行棋具有拥有登录界面,在登录界面可以进行注册,其中数据时存储在MySQL数据库中。登录游戏成功后可以选择人机模式、双人模式、三人模式、四人模式。选择模式之后便可以进行飞行棋游戏,本人有三颗红心,每被人机打中一次就少一颗心,没有红心了游戏结束。基地被人机击穿也游戏结束。自身的坦克撞到人机坦克,直接游戏结束。当所有人机被击败后,游戏成功结束。飞行棋棋盘上有红黄蓝绿四种颜色,每个玩家有4架飞机,当一架飞机飞到终点时即完成飞机的任务。在飞机行走途中还可能吃到道具而形成不同的功能。

3.总体设计

7278ce3982da5616ddca13aa5d9ee303.png

4.本人在项目中的Git提交记录截图:

9c5a28bcb0e7f66411f45bc0f0664acb.png

58ebfe3e0aca2c0228573f1805a9ddf7.png

f1b52deff18d0b401cc9874c7c89318c.png

b727436292aabf8a0c613cda16de09b1.png

eceb6efcefe00aa073aeeb295c1119e9.png

4.本人负责的主要功能展示与代码分析

本人负责登录、注册方面,与数据库相关操作,以及实现4种道具功能及细节

登录方面:

在登录界面中利用鼠标点击相应的按钮来实现登录或注册功能。在登录中利用连接到数据库,实现从数据库中查询来判断是否存在该用户,存在则再判断密码是否正确来判断是否成功登录;如果不存在该用户则提示玩家注册。

道具方面:

定义四种道具类型,分别用0、1、2、3代表道具类型来实现不同的功能,并定义一轮中产生6个道具在棋盘上(摇5次骰子就更换道具来实现道具更新),用Arraylist来存放6个道具的地点。产生道具过程中同时要判断是否产生在棋子上面或有道具的位置重复了,很明显这些情况是不符合的要去除这些情况。不同的道具有不同的功能,要实现道具的具体功能需要和团队成员进行讨论。

登录与注册:

c2268382fd16b28d74f256fa8b8e6a2f.png

d0ff003a3152b667b4cdbfcc11f2ad5b.png

a6483eca7382fe3116c8057a374f5a98.png

69b60d36ab63fdc8209da05f80127c48.png

3a03d4933fb717565116e841fa572447.png

c0e5bf90de39a344ea09de53b1e945a5.png

关键代码分析:

注册:

391843ff22b76a4b95187def237f6eeb.png

登录:

5be76d108713a7723b3f7c2ea00825ea.png

number1用于记录下如果找到该用户名的时候该用户的序号,防止待会找密码的时候出现:输入的密码与该用户的密码不匹配但别的用户有该错误密码而错误登录的情况

f3c549845edb5630641599363c90af4f.png

道具:

道具产生:

c451fbf813d4391452cb4298835f0623.png

道具更新(每摇五次骰子)

更新前:

9ad275659b512e125a68b80431eebb13.png

更新后:

02f8ba05e2857aa446bdf473d502e93a.png

触发道具功能:

踩到多摇一次骰子道具:

112f99b7be7ca4d2f2599efc8e7265c8.png

1aa3295a4cfc121fdd1d4b5f014cb4e4.png

f72744e6dc25d3654edbac7d776acda3.png

be666e37e354355244e5a820e04414d9.png

踩到炸弹道具,退后两格:

5737d9e7cbfef5d18d6f9aa9a8a0fc0b.png

68019d48cd12a8e2513d88984047f2f5.png

69f7a939664282b8ef3b6a99277d34b7.png

踩到前进6格道具:

04b5f108de59d7f50b84abce62bfbb8b.png

bf2e61a02a5969c4bd1a7021b3b5661a.png

7d842796c61e26ec24b7a7e46d5e4cdf.png

踩到龙卷风道具,随机吹走:

390e7bf5740b5454be72f1bad5f3504a.png

0ebfce80c15d9d8ab8acec922721199c.png

8ea9fbaf1f2d9d40f337dd95cd31397d.png

关键代码分析:

道具产生:

8410843e1c4dd7817759ac65b852081b.png

设置一个Arraylist来存放产生的6个道具的坐标,以及一个type存放对应点是什么道具功能

a45e4aa06748448f9ee5a9ba7d7b8ce1.png

踩到炸弹时候操作:

7484d9555c8ae66053d0cdad33b48db9.png

踩到前进6格道具时候操作:

558287215e7a748b388b5fb034baefb5.png

首先遍历整个棋盘点的坐标直至遍历到踩到该道具的点的坐标,将这些坐标存起来。

特殊点的坐标我将其退回为初始位置。

e4b5a70351a281f2cac584c19cabe8ed.png

如果不是以上的特殊情况的话只需要直接取我已存的52个棋盘点的往前两个的坐标直接返回即可。

踩到龙卷风道具:

0c93c57db1147e43afd1e07b48a976c9.png

踩到龙卷风首先得产生一个随机数,飞行棋飞到的地点得在整个棋盘52个点上除了终点前的那条直路,并且不能飞到已经有道具或棋子上的坐标点

踩到多摇一次骰子的道具:

9b86933935f5d1f884c72e72f9ef4716.png

如果踩到了个多摇一次骰子的道具,则有一个变量将其值置为true

7091dece0761ed9d06ba9d08fdb38a67.png

5.总结

通过本次数据库课程设计,对数据库的使用有了更深的了解,对于数据库的设计过程和方法有了更全面的认识。当然,本次课程设计使用的是数据库语言,对这门语言也有了初步的认识。在完成系统的过程中,让我认识到了自己的不足,自己在项目综合实训方面还比较欠缺。在此过程中使我加深了对java的理解,以及如何进行团队工作的划分,通过这次课程设计,使我灵活应用所学知识,独立通过这次课程设计,使我灵活应用所学数据结构知识,独立完成问题分析,结合知识,编写程序求解指定问题。提高综合运用所学的理论知识和方法独立分析和解决问题的能力;同时在这学期的实验中,培养了独立思考、动手操作的能力,在各种其它能力上也都有了提高。在实验课上,我学会了很多学习的方法。而这是日后最实用的。要面对社会的挑战,只有不断的学习、实践,再学习、再实践。这对于我的将来也有很大的帮助。以后,不管有多苦,我想我都能变苦为乐,找寻有趣的事情,发现其中珍贵的事情。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值