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

1.2UML类图

2.个人负责模块或任务说明

黄色划线部分为我负责的功能

3.代码提交记录

4.负责模块详细说明

蛇的移动模块(使用了Timer类,通过设计刷新的时间,实现KeyListener和ActionListener接口实现对键盘按键和变量监听的方法,实现蛇的移动)

画出界面模块

难点是判断位置的坐标,使用画图Graphics类,实现了Jpanel的paintComponent方法,用里面的paintIcon,setColor,fillRect等方法实现

音乐播放模块

5.课设感想

一开始不知道怎么实现蛇的移动,使用键盘监听可以控制蛇的方向,但是怎么让蛇动起来不知道,最后结合Timer刷新来实现,简单的说,游戏界面的实现就是监听键盘和变量,控制刷新的时间来实现的。在设置不同难度时,我一开始想直接判定蛇是否撞墙,但是这样的代码量太大了,让我望而生畏,于是我定义一个wall数组,在画墙的同时,把墙的坐标输入wall数组中,这样,只要判断蛇头是否与墙重合即可,同时,也不能忘了让食物无法绘制在墙和蛇身上。在音乐播放界面中,我一开始用的不是wav格式,导致无法播放,然后在写地址时也不是像图片那么简单,只要将图片放入类的包中即可,而是要指向绝对路径,这搞得我一头雾水,最后实现了背景音乐和吃东西发出的声音后,在自己找bug时发现,当吃了7个东西之后背景音乐就停止了,我打开任务管理器查看CPU的占用,发现应该是我实现音乐的播放方式有问题,导致线程过多,当吃了7个东西时,CPU的占用突然就上升了百分之二十。但是继续吃东西还是可以发出声音的,这让我十分疑惑。

6.展望

1.在音乐播放功能上,连吃七个东西后导致背景音乐的暂停,以后要多学习多线程的使用和学习问题如何解决。一开始要用javaFX技术实现,但是在安装上就花费了大量时间,导致不战而退。

2.课设后我要进一步学习javaFX,用该技术来实现贪吃蛇,学习数据库编程,存储登录信息。同时增加贪吃蛇的多线程功能,可以实现双人贪吃蛇。

双人贪吃蛇java 代码_贪吃蛇课设--个人博客相关推荐

  1. markdown引入代码_第 09 篇:让博客支持 Markdown 语法和代码高亮

    作者:HelloGitHub-追梦人物 文中涉及的示例代码,已同步更新到HelloGitHub-Team 仓库[1] 为了让博客文章具有良好的排版,显示更加丰富的格式,我们使用 Markdown 语法 ...

  2. 手写数字识别实现课设cnsd博客_使用Tesseract轻松实现OCR字体识别

    本教程翻译自PyImageSearch英文原文 实现效果 今天的博客文章是安装和是用Tesseract library 进行OCR识别的两章系列中的第一部分. OCR可以自动对手写或者印刷字体进行类型 ...

  3. python拍七游戏代码_拍七数字游戏 - Johannes-Jensen - 博客园

    最近写作业时,老师留了一道关于拍七数字游戏的题,"拍7游戏"规则是:一堆人围成一圈,开始时,任意指定一人说出数字"1"后,一圈人按顺时针方向,每人按整数由小到大 ...

  4. 手写数字识别实现课设cnsd博客_讯飞输入法Android V9.1.9465 重磅升级拼音手写A.I.引擎...

    基于科大讯飞领先的A.I.实力,讯飞输入法Android V9.1.9465喜获拼音输入和手写输入的重磅升级,为用户带来更具智慧的输入新体验.不仅如此,高效便捷的莫得键盘2.0在继承A.I.语音强大基 ...

  5. java多线程贪吃蛇实验报告_贪吃蛇java实验报告.docx

    贪吃蛇java实验报告 贪吃蛇java实验报告 篇一:JAVA贪吃蛇课程设计报告 <Java应用开发> 课程设计报告 题 目:指导老师:姓 名:专 业:班 级:日 期: JAVA小游戏 - ...

  6. java用正则表达式判断字符串中是否仅包含英文字母、数字和汉字_灵思致远Leansmall的博客-CSDN博客_java判断字符串只包含数字字母

    import java.util.regex.Matcher; import java.util.regex.Pattern;public class StrValidate {// 纯数字priva ...

  7. java毕业设计项目_第167期ssm多用户博客个人网站_计算机毕业设计

    java毕业设计项目_第167期ssm多用户博客个人网站_计算机毕业设计 [源码请到资源专栏下载] 今天分享的项目是<ssm多用户博客个人网站> 该项目分为2个角色,管理员和用户. 用户可 ...

  8. 个人博客代码_Jekyll + Github Pages 搭建个人免费博客

    今天亲手通过 Jekyll 搭建了一套免费博客,搭建步骤其实超级简单.你不需要购买域名,也不需要购买服务器,就可以轻松拥有你自己的博客.Jekyll 的核心是一个文本转换引擎.它的方便之处在于支持多种 ...

  9. 2.2.2 胸腰差和胸臀差的应用_米人NOONE_新浪博客

    2.2.2 胸腰差和胸臀差的应用_米人NOONE_新浪博客 2.2.2  胸腰差和胸臀差的应用_米人NOONE_新浪博客 腰差和胸臀差的应用 (2009-06-16 19:24:57) 转载▼ 标签: ...

  10. 记事本贪吃蛇游戏代码_厉害了,程序员28行代码写贪吃蛇游戏,附源码!

    对于贪吃蛇游戏,大家基本上都玩过,但是作为一个程序员,大家是否想过要自己去写一个贪吃蛇,毕竟玩别人写的游戏和自己写的游戏是两种截然不同的感受,而且也可以通过制作来提升自己的技术! 其实贪吃蛇的逻辑并不 ...

最新文章

  1. 利用开区间覆盖的约简给出$\bf{Lindelöf}$覆盖定理的一个新证明
  2. JavaScript实现CountingSort计数排序算法(附完整源码)
  3. 进程间通信:消息队列概念及代码
  4. MySQL基础入门学习【7】查询表达式解析 SELECT
  5. win7台式电脑怎么连wifi_台式电脑怎么用wifi网络
  6. java 门面模式_Java门面模式
  7. html 两个图片并排,HTML – 两个图像并排和响应
  8. idea 配置springmvc+mybatis(图文教程)
  9. 创建向导时为其添加path,指为jar添加到path里面
  10. C++公有、私有、保护继承的关系
  11. 队列(链式存储结构)
  12. Windows server 2008R2 如何成功离线安装.net 4.7.2
  13. 数字信号处理考试要点
  14. java生成竖排文字图片_怎么给图片加上竖排文字?
  15. windows怎样让宽带自动连接
  16. 成为oracle白金会员,华为成为Linux基金会白金会员
  17. 缺少配色灵感,整理超全超赞的配色工具帮你
  18. python 取数组最后一个,如何获取数组中的最后一个键?
  19. 华为电脑怎么录屏?分享你两个好方法
  20. 阿呆的第一篇CSDN博客

热门文章

  1. C++_深浅拷贝详解
  2. 语音识别之Fbank特征提取工具的比较(kaldi、python_speech_features、torchaudio)
  3. 广度优先搜索算法1-已知若干个城市的路线,求从一个城市到另外一个城市的路径,要求路径中经过的城市最少。
  4. Java开发从零开始!java游戏服务器开发教程
  5. 01-探寻 JavaScript 反爬虫的根本原因
  6. 庞果答题:亿阳信通:不可表示的数 的一个人见解(8-13第二次更新。)
  7. 开运魔法,晓腾叔叔的日常迷信。
  8. 设计模式 | 装饰者模式及典型应用
  9. Revel框架基本使用和搭建教程
  10. 招商银行笔试题之糖果分配