Java贪吃蛇感想】的更多相关文章

暑假敲代码的效率真的不高呀,一个这种小游戏从最开始构思到最后实施代码,从最开始的Demo版本到最后的第四版本,花了一个星期了.本想再更新一个版本,加入双人对战模式,还想写个AI版,可是我估计按照现在我这种效率又要画上好多时间了.想想还是等以后有时间再写吧...虽然这游戏写起来看似不难,可是对现在的我来说,还是有点考验的.中途也遇到了不少问题,遇到了不少知识盲区.我发现设计游戏有时候比敲代码还要头疼,你从最开始基本没有什么头绪的状态到后来逐步开始思考游戏的玩法,怎么去实现,制定游戏规则,敲代码,调…
这个贪吃蛇有很多功能没有实现,比如说穿墙(本来可以实现,但是穿墙后,就会出现坐标混乱,吃不到食物了),还有碰到自己的身体死亡的情况也没有实现,现在我知道如何判断是否碰到身体,但是,我不知道,如何处理碰到身体后的情况.这些问题我想过段时间去解决. import java.awt.Color; import java.awt.event.KeyAdapter; import java.awt.event.KeyEvent; import java.util.LinkedList; import ja…
package snake.game; import java.awt.CardLayout; import java.awt.Color; import java.awt.Graphics;   import java.awt.Image; import java.awt.Insets; import java.awt.Point; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import j…
贪吃蛇 思路 首先构思游戏布局,计算合理的坐标系. 绘制静态数据(广告.初始小蛇.提示信息.棋盘) 添加键盘监听事件,改变游戏状态以及小蛇运动方向 添加定时器,让小蛇在一段时间内移动一定的距离 随机产生食物,并监听食物状态是否被吃 处理游戏结束事件 扩展相关游戏机制(积分.等级) 定义数据 绘制图像 事件监听 注意事项 导入文件资源时,通过类的相对路径获取 URL headURL = Data.class.getResource("header.png"); // 这是放在源代码同一个…
https://blog.csdn.net/u011622021/article/details/81162083…
一.使用知识 Jframe GUI 双向链表 线程 二.使用工具 IntelliJ IDEA jdk 1.8 三.开发过程 3.1素材准备 首先在开发之前应该准备一些素材,已备用,我主要找了一个图片以及一段优雅的音乐. 在这里插入图片描述 3.2 开发过程 3.2.1 创建项目 首先进入idea首页 open一个你想放项目的文件夹 在这里插入图片描述 进入之后右键文件名 new 一个新的Directory--Snake 在这里插入图片描述 把准备好的素材复制到文件中 在这里插入图片描述 继续创建…
学习Java有那么一个月了,兴趣还是挺高的.然而最近老师布置的一个迷宫问题,着实让我头疼了一两个礼拜,以至于身心疲惫,困扰不安.无奈,暂且先放下这个迷宫问题,写个简单点的贪吃蛇程序,以此来提高低落的情绪. 在脑中构思了一下贪吃蛇的大概思路之后,便开始动手写程序了(这也是我一贯的作风,然而也是有让自己多走弯路的),写写停停,一天下来,程序倒是写出来了,然而问题也是很多的,一个主要的问题就是蛇的拐弯,不能一节一节的改变方向,而是吃到食物变长后直接整个身体的拐弯,蛮横,霸道.找了好久还是没能改掉这个问…
自我审视 最近自己学习java已经有了一个多月的时间,从一开始对变量常量的概念一无所知,到现在能勉强写几个小程序玩玩,已经有了长足的进步.今天没有去学习,学校里要进行毕业答辩和拍毕业照了,于是请了几天的假,自己也就有了一点空余的时间.回想这一个多月,自己做到好的地方是把大部分时间都用在了看书和码代码上,学习的重点放在了追求对知识的理解和内容的广度之上.书籍方面阅读了<java核心技术>和<java编程思想>,虽然说没有理解全部的内容,<编程思想>一书也只看了300多页,…
代码剖析 贪吃蛇是一款十分经典的小游戏,对初入coding的朋友来说,拿贪吃蛇这样一个案例来练手十分合适,并不高的难度和成功后的成就感都是学习所必须的.下面我将依照我当时的思路,来逐步分析实现的整个过程. 让我们逐一分析.首先,整个游戏最基本的元素是地图.在java中用于绘图的类是swing和awt,在这里主要用到swing类.swing中用于窗口显示的类有JFrame及其子类.JFrame可以直接添加组件,但其本质是将组件添加到JFrame中的一个默认面板里,为了代码清晰,我会使用JPanel…
代码剖析 在上一篇文章中,我们完成了贪吃蛇部分代码的构造.回头审视我们写的代码与思路,会发现我们遗漏了一个重要的地方,那就是:贪吃蛇的自身移动.想必大家都知道,贪吃蛇自身是会自己移动的,并且会跟随你的方向来不断移动.我们需要在代码中来体现这个功能,那么如何体现呢?查阅API,我们发现了一个TIMER类.API中的描述是:在指定时间间隔触发一个或多个ActionEvent,一个实例用法就是动画对象,它将Timer用作绘制其帧 的触发器.Timer的构造方法是Timer(int delay, Act…
简介 正文 01.JFrame是啥? 02.JPanel 03. KeyListener 04.Runnable 05.游戏Running 06.游戏初始类编写 07.main 简介: 一直以来用代码来写图形界面是我从来没有做过的事,(-。-;)额,但是已经选择软开这条路,我觉得什么都是要会一点,这样的话也许大概可能多个月后重新写东西能够得心应手很多吧.而且,以后自己要是忘记了,也可以在这里看看,顺便提高高自己文学能力.原谅我敲字比较难看懂,这些当中多多少少是存在自己情感写出来的,看正文好了.…
package snake; import java.awt.BorderLayout;import java.awt.Canvas;import java.awt.Color;import java.awt.Container;import java.awt.Graphics;import java.awt.event.KeyAdapter;import java.awt.event.KeyEvent;import java.util.Arrays;import java.util.Itera…
using System; using System.Windows.Forms; using System.Drawing; class Window : Form { Point[] a = ]; ; Random r = new Random(); Point food=new Point(); int dir; ; ; ; ; ,-},{,},{,},{-,}}; , ysize = ; ; public Window() { Text = "贪吃蛇--made by weidiao.n…
最简单的4个java类就可以实现贪吃蛇: main函数: package tcs; public class GreedSnake { public static void main(String[] args) { SnakeModel model = new SnakeModel(20,30); SnakeControl control = new SnakeControl(model); SnakeView view = new SnakeView(model,control); //添加…
刚刚接触java的文本框绘图的知识点,然后就可以按照老师的提醒做一些简单的游戏,对JFrame加深一下,下面就贪吃蛇给出一些源代码,其实正真的实现的代码并不多,只是稍微处理一下就可以明白,下面代码均有注释! 第一个类shake类 import java.awt.Color; import java.awt.Graphics; import java.util.Random; public class Snake { public int w;//半径 public int x , y;//球心坐…
花了两个下午写了一个贪吃蛇小游戏,本人想写这游戏很长时间了.作为以前诺基亚手机上的经典游戏,贪吃蛇和俄罗斯方块一样,都曾经在我们的童年给我们带来了很多乐趣.世间万物斗转星移,诺基亚曾经作为手机业的龙头老大,现如今也一步步走向衰落,被收购,再过不久估计就要退出手机业务了,而贪吃蛇这款游戏也基本上没人玩了,甚至在新一代人的印象中都已毫无记忆了...但是,这款游戏在它基础上经过改造其实可以弄出很多花样,也确实可以在一定程度上锻炼自己的编程能力.前不久十分火热的贪吃蛇大作战其实就可以看做是在这款游戏的基…
贪吃蛇  Java实现 1.面向对象思想 1.创建antition包它是包含sanke  Ground Food类 2.创建Controller包controller类 3.创建Game包有game类 4.创建Listener包有SankerLisener类 5.创建view包里面有Gamepanel类 6.创建util包里面有Globa类…
贪吃蛇游戏的设计步骤: Part 1: 设计游戏图纸 画出900*700的白色窗口 在窗口上添加画布 在画布上添加标题 在画布上添加黑色游戏区 Part 2: 放置静态的蛇:一个头.两个身体 加上开始提示:按空格键开始游戏 让蛇动起来:监听Timer事件,平移数据 实现游戏暂停 实现转向功能 Part 3: 添加食物 吃掉食物 添加死亡条件 实现“重新开始”功能 添加分数和长度 游戏图纸如下: 蛇及游戏框的素材如下:                              图片下载地址    …
1. [代码]java 简单程序     跳至 [1] [全屏预览]package com.snake;import java.awt.*;import javax.swing.*;import java.awt.event.*;import java.util.*;public class SnakeGame extends JFrame implements KeyListener{ private int stat=1,direction=0,bodylen=6,headx=7,heady…
这是我第一次工程实践的作业,选题很多,但我只对其中的游戏开发感兴趣,可游戏就两三个类型,最终还是选择了贪吃蛇.其实就贪吃蛇本身的代码实现还算是比较简单的,可是实践要求代码行达到一定数量,所以我就额外给游戏增加了很多功能,比如账号的注册,登录,密码重置,积分和局数的排行.游戏用Java开发完成,本来是不大熟悉Java语言,选这门语言只是想顺便学习学习,也在网上参考了很多前辈的代码,然后边学边做,肝了两天多终于完成了.算是第一次用Java开发一个比较完整的项目,等工程实践答辩完成后就把源码放出来,现…
Java一个简单的贪吃蛇 虽然GUI已经要淘汰了,但是手动写写界面还是有助于理解语法的,像构造函数 ,函数调用,内部类,继承,接口.有助于半初学者强化理解. 直接上代码 游戏主体类: package com.chenghu.snake; import javax.swing.*; public class StartGame { public static void main(String[] args) { JFrame frame = new JFrame(); //new一个窗体 fram…
目录 主要用到 swing 包下的一些类 上代码 游戏启动类 游戏数据类 游戏面板类 代码地址 主要用到 swing 包下的一些类 JFrame 窗口类 JPanel 面板类 KeyListener 键盘接口 ActionListener 监听接口 上代码 游戏启动类 package com.snake; import javax.swing.*; // 游戏的启动类 public class StartGame { public static void main(String[] args)…
JAVA GUI练习 贪吃蛇小游戏 前几天虽然生病了,但还是跟着狂神学习了GUI的方面,跟着练习了贪吃蛇的小项目,这里有狂神写的源码点我下载,还有我跟着敲的点我下载,嘿嘿,也就注释了下重要的地方,这方面逻辑层面还是很简单的,主要是GUI绘画,布局等等的学习,这里我也贴出我这里GUI练习写过的包点我下载,不过这个比较乱(前面基础的awt比较乱,没分包写,swing基本都分包写了还是不乱的),但你打开这个包,你idea也是能通过英文看出来什么意思的~~ 贴一下贪吃蛇的代码吧~~ JavaDoc可以自…
[Java]GUI实现贪吃蛇 前言 我们在做这个小游戏之前,得确保自己的AWT和Swing有一定的基础,并且会写一些简单的逻辑操作.这些都会在后面写的时候体现出来. 狂神老师从这里开始讲贪吃蛇的 我们在看视频的时候都知道,视频是一帧一帧播放的,一般我们看动画的帧率是每秒24帧. 我们在GUI中实现帧率的,通过不断刷新实现 此外,我们要通过键盘监听来监听键盘的上下左右操作来控制小蛇的移动 还需要通过定时器Timer来实现 文章中的贪吃蛇代码源码已经给出了,这里还有一份我自己构建的jar包,下载地址…
详细教程: 使用Java的GUI技术实现 " 贪吃蛇 " 游戏_IT打工酱的博客-CSDN博客…
小明在爷爷的私人收藏馆里找到一台老式电脑.居然没有图形界面,只能用控制台编程. 如上图,是游戏时画面截图. 其中,H表示蛇头,T表示蛇尾.#表示蛇的身体,@表示身体交叉重叠的地方. 你能说出现在的贪吃蛇长度是多少吗? 其实,只要数出#的数目算1,数出@的数目,算2,再加上头尾各算1就计算好了. 人工数一下?太累眼睛了,聪明的你为什么不让计算机帮忙呢? 本题的要求就是: 请填写上图中贪食蛇的长度是多少? 注意:需要提交的是一个整数,不要添加任何多余内容(比如说明或注释) +------------…
游戏界面基本布局 贪吃蛇是基于JFrame的一款小游戏.它主要有两部分组成,一个是显示区域,一个是按钮区域.这两个区域都用JPanel来实现. 首先需要创建一个基于JFrame的类,例如创建一个MyFrame,让其继承于JFrame. 然后创建一个显示区域的类MyPanel,一个按钮区域的类Button,当然了这两个类都基于JPanel. 第三步:在MyFrame类中实例化两个JPanel类.并在MyFrame构造方法中设置窗体的logo.窗体的标题.窗体初始位置.窗体的大小.窗体的背景颜色.窗…
项目结构 新建一个JFrame窗口,作为程序入口 public class GameStart{ public static void main(String[] args) { JFrame jFrame = new JFrame(); jFrame.setBounds(100,100,900,720); jFrame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); jFrame.setResizable(false); jFr…
一.项目简介 贪吃蛇是一个很经典的游戏,也很适合用来学习.本教程将和大家一起做一个Android版的贪吃蛇游戏. 我已经将做好的案例上传到了应用宝,无病毒.无广告,大家可以放心下载下来把玩一下.应用宝不允许重名,我取名叫“快乐贪吃蛇”.应用宝链接:http://sj.qq.com/myapp/detail.htm?apkName=net.chengyujia.happysnake 同时我也将本游戏的源代码上传到了GitHub,欢迎大家Fork.GitHub链接:https://github.co…
作为小学期程序设计训练大作业的一部分,也是自己之前思考过的一个问题,终于利用小学期完成了贪吃蛇AI的一次尝试,下作一总结. 背景介绍: 首先,我针对贪吃蛇AI这一关键词在百度和google上尽心了检索,大致获得了一下信息 1.A*寻路算法是人工智能中的一个经典算法,很多AI利用这个算法提高性能. 2.在alphaGo一战成名,人工智能家喻户晓之后,有一个贪吃蛇AI吃满全屏的GIF图已读在微博疯转. 3.这个GIF图早在2013年就已经出现了(其实比alphaGo早). 4.国内过于贪吃蛇AI(也…