JAVA贪吃蛇小游戏源代码系列

article/2025/10/15 7:25:44

欢迎关注公众号:

在这里插入图片描述

获取贪吃蛇小游戏的源代码。

贪吃蛇小游戏运行结果如下:
启动界面:
在这里插入图片描述
运行界面:
在这里插入图片描述
重启界面:
在这里插入图片描述
源代码框架如下:
![在这里插入图片描述](https://img-blog.csdnimg.cn/20190505112628451.pn

注:在运行程序的时候,得重新设计窗体的大小,以适合自己的电脑,其次,图片类和音乐类都保存在我自己电脑的F盘的相应路径下,在运行程序的时候需要将图片类和音乐类保存到自己的本地磁盘路径中,然后在程序中改变路径。

package snakeGame;/** @project project* @author liyongping* @creed: just do it* @ date 2021/12/21 17:43* @ version 1.0*///设置类,定义游戏中的各个参数,public class Setting {//图片路径String background="src/snakeGame/image/timg.jpg";String restartPicture="src/snakeGame/image/restartPicture.jpg";String background1="src/snakeGame/image/background1.jpg";String up="src/snakeGame/image/up.png";String down="src/snakeGame/image/down.png";String left="src/snakeGame/image/left.png";String right="src/snakeGame/image/right.png";String food="src/snakeGame/image/food.png";String body="src/snakeGame/image/body.png";//音乐路径String applauseMusic="src/snakeGame/music/applauseMusic.wav";String eatFoodMusic="src/snakeGame/music/eatFoodMusic.wav";String DeadMusic="src/snakeGame/music/DeadMusic.wav";String pushButtonMusic="src/snakeGame/music/pushButtonMusic.wav";String encouragMusic="src/snakeGame/music/encouragMusic.wav";String backgroundMusic="src/snakeGame/music/backgroundMusic.wav";}
package snakeGame;/* Test类的主要任务是设计程序运行后的界面,包括 程序启动的界面和游戏运行界面。* 程序启动的界面包括背景图片和进入运行界面的Button,点击按钮之后程序关闭启动界面进入到运行界面,* 运行界面设置在SnakeGame类中,Test类大体设置了运行界面的大小可见与否等。*/import com.sun.deploy.panel.RuleSetViewerDialog;import java.awt.Color;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;public class Start    extends JFrame implements ActionListener  {public static RuleSetViewerDialog frame1;static  JFrame frame = new  JFrame( );Setting setting =new Setting();public  Start(){                                                 //设置启动界面addFrame();//添加框架AddButton();//添加按钮AddPicture();//添加图片}public void addFrame(){frame.setUndecorated(true);                                //用于取消边框背景frame.setLayout (null);frame.setSize(1000,600);//定义游戏边框大小frame.setLocation(100, 200);//定义游戏边框位置frame.setLocationRelativeTo (null);frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.setVisible(true);}//定义进入游戏按钮public  void  AddButton() {RButton  enterButton =new RButton("进入游戏");enterButton.setFont(new Font("华文行楷", Font.BOLD, 35));//定义字体enterButton.setForeground(Color.red);enterButton.setBounds (450,  450 , 200, 100);enterButton.setBackground(Color.white);frame.add(enterButton);enterButton.addActionListener(this);//添加按键响应事件}//加入背景图片public  void  AddPicture() {ImageIcon img = new ImageIcon(setting.background);JLabel Label= new JLabel(img);Label.setBounds(0,0,1000,600);            //设置大小frame.getLayeredPane().add(Label,new Integer(Integer.MIN_VALUE));      //设置图片底层和按钮在容器中的顺序JPanel  jp  =(JPanel)frame.getContentPane();jp.setOpaque(false);                                                   //设置透明与否}/*设置按钮的监听器事件* 进入按钮的监听器事件的主要功能是当点击按钮以后,程序关掉启动界面,并转入运行界面。* 主要实现原理是定义一个新界面的类,作为运行界面,然后定义一个关掉启动界面的方法,然后在监听器事件中,* 调用关掉界面的方法,实例化运行界面*/@Overridepublic void actionPerformed(ActionEvent e) {new music(setting.pushButtonMusic);// TODO 自动生成的方法存根closeThis();		   //关掉当前界面new snakeGameFrame ();//实例化运行界面}private void closeThis() {// TODO 自动生成的方法存根frame.dispose();frame.setVisible(false);}
}
package snakeGame;
/** 定义一个类,用来描述贪吃蛇游戏中的蛇,蛇身上的每一个点,通过建立snakeNode的对象,指定不同的X轴和Y轴的值,就能组成一个蛇身。* 同时可以获得蛇身上的x和y点坐标,和颜色*/
import java.awt.Color;public class SnakeNode {    //定义蛇身集合中的各个元素点,x,y。以及颜色三个蛇的关键组成private int x;private int y;private Color color;//定义颜色public int setX=20;//定义蛇身每个点的大小public int setY=20;//定义蛇身每个点的大小public SnakeNode() {super();}public SnakeNode(int x, int y, Color color) {super();this.x = x;this.y = y;this.color = color;}public int getX() {return x;}public void setX(int x) {this.x = x;}public int getY() {return y;}public void setY(int y) {this.y = y;}public Color getColor() {return color;}public void setColor(Color color) {this.color = color;}
}

http://chatgpt.dhexx.cn/article/G6Rmm8tf.shtml

相关文章

JAVA 实现《贪吃蛇大作战》游戏|CSDN创作打卡

前言 贪吃蛇(也叫做贪食蛇)游戏是一款休闲益智类游戏,有PC和手机等多平台版本。既简单又耐玩。该游戏通过控制蛇头方向吃东西,从而使得蛇变得越来越长。 本程序是通过java的swing来实现《贪吃蛇大作战》这款游戏。 主要需求 1…

java贪吃蛇源码

欢迎访问我的个人博客 https://jialaner.cn/​​​​​​​ java是一种面向对象的语言,有着其中不用质疑的优点。学习java将近三个月了,一直在琢磨着“万物皆对象”的意义,却总是只知其表不知其意,做完这个java贪吃蛇后才有了那么…

贪吃蛇 java实现超简单的贪吃蛇(附源代码)

贪吃蛇游戏 贪吃蛇是个非常经典的游戏,希望对初学Java的小伙伴有一定帮助。希望大家喜欢,因为写得简单,希望大家都能看得懂。 游戏界面(游戏背景素材不喜欢的话可以自己换,就别在乎我选的素材(&#x1f9…

java实现贪吃蛇小游戏(源码+注释)

一.工程文件 二.Main.java package com.company;import javax.swing.*;public class Main {public static void main(String[] args) {//创建窗体对象JFrame frame new JFrame();//创建窗体参数()frame.setBounds(10,10,900,720);//设置不允许更改大小…

使用Java实现一个简单的贪吃蛇小游戏

基于java实现贪吃蛇小游戏,主要通过绘制不同的图片并以一定速度一帧一帧地在窗体上进行展示。 开发工具:eclipse java工具包:jdk1.8 一、创建新项目 创建一个新的项目,并命名。创建一个名为images的文件夹用来存放游戏相关图片…

Java贪吃蛇全代码

用Java编写精典小游戏——贪吃蛇! 前言 我想贪吃蛇应该是不少90后和00后的童年(我本人是01年的),回想起从前偷偷拿着我爹的诺基亚在被窝里玩贪吃蛇,不禁感慨万分,时间飞逝,没想到10年后的我也可…

JAVA小项目(四)—— 贪吃蛇【轻松入门,附源码】

目录 (一)效果图 (二)代码实现 (1)将图片加载到程序中 (2)创建窗体 (3)创建面板 (4)绘制静态的小蛇 (5) 加入监…

Java贪吃蛇大作战

作为Java新手小白,渴望学习一些好玩有趣的java程序 废话不多说,接下来我会一步一步实现java小程序:贪吃蛇大作战哦! 实现 Java贪吃蛇一共分四个步骤: 1、画出窗体对象 2、绘制静态ui 3、使用鼠标监听器事件和定时器事…

Java简易小游戏贪吃蛇(Java实战)

这个版本的贪吃蛇我是跟着“黑马程序员”写的。小伙伴们可以跟着视频试着做一下,同时视频也会更详细。 B站学习链接:【黑马】两个小时带你用Java语言写一个贪吃蛇游戏【配套源码笔记】_哔哩哔哩_bilibili 相对于新手而言,贪吃蛇应该算是一个…

JAVA实现贪吃蛇游戏

本文实现的功能有: 1.绘制静态窗口 2.绘制游戏面板 3.绘制静态小蛇 4.通过键盘控制小蛇移动 5.吃食物 6.积分系统和失败判定 最近在学GUI,然后又有读者希望我写一下相关的实战。刚好博主在b站漫无目的的寻找着题材的时候看到了一个写贪吃蛇游戏的视频,于…

Java实现贪吃蛇大作战小游戏(完整版)

大家好,今天尝试用swing技术写一个贪吃蛇大作战小游戏,供大家参考。 效果展示 目录 效果展示 一、游戏界面 二、得分情况 项目介绍 项目背景 总体需求 实现过程 代码展示 主类 :Demo类 MyPanel类 ①构造方法 ②初始化方法 ③绘制方法…

用java写一个贪吃蛇小游戏(源码在最后)

一、引入 涉及技能: 循环、分支方法的抽取数组的使用面向对象继承,子类方法的重写接口,接口的实现GUI(图像化界面编程) GUI中的组件: 7.1 窗口 7.2 弹窗 7.3 面板 7.4 文本框 7.5 列表框 7.6 按钮 7.7 图…

安卓蓝牙开发总结(一)—蓝牙开启与关闭

蓝牙开启与关闭 1、引言2、布局文件3、蓝牙打开与关闭  3.1 通过对按钮监听方法  3.2 通过设置点击事件 4、结果展示及总结5、参考链接 1、引言 最近在学习如何在安卓手机上对蓝牙进行操控,作为初学者发现大多数博客对安卓开发的初学者极为不友好,特…

【Bluetooth|蓝牙开发】二、蓝牙开发入门

个人主页:董哥聊技术 我是董哥,嵌入式领域新星创作者 创作理念:专注分享高质量嵌入式文章,让大家读有所得! 【所有文章汇总】 1、蓝牙基础概念 蓝牙,是一种利用低功率无线电,支持设备短距离…

nimble 蓝牙开发一:BLE 蓝牙 Host 规范概述

目录 nimble 蓝牙开发一:概述一、BLE 简介二、BLE 基础知识蓝牙设备地址BLE 广播类型标准广播数据 三、BLE 工作概述BLE 常见的操作有:BLE 常见的工作流程: 四、BLE 使用的协议规范GAP1. GAP 工作角色2. GAP 工作模式3. GAP 工作流程4. GAP 工…

ESP32 蓝牙开发

1. 低功耗蓝牙(BLE)协议栈 低功耗蓝牙协议是蓝牙通信协议的一种,BLE协议栈就是实现低功耗蓝牙协议的代码 1.1 层次协议 蓝牙协议规定了两个层次的协议,分别为蓝牙核心协议(Bluetooth Core)和蓝牙应用层协…

Android蓝牙开发 — 经典蓝牙BLE蓝牙

一,前期基础知识储备 1)蓝牙是一种支持设备之间短距离通信的无线电技术(其他还包括红外,WIFI); 支持移动电话、笔记本电脑、无线耳机等设备之间进行信息的交换; Android支持的蓝牙协议栈&…

Android 蓝牙开发——概述(一)

一、蓝牙简介 蓝牙技术是一种无线数据和语音通信开放的全球规范,它是基于低成本的近距离无线连接,为固定和移动设备建立通信环境的一种特殊的近距离无线技术连接。 其中将1.x~3.0之间的版本称之为经典蓝牙,4.x开始的蓝牙称之为低功耗蓝牙,也就是蓝牙BLE。 1、蓝牙协议介绍…

低功耗蓝牙开发入门概念科普

一、概述 1、缘起 低功耗蓝牙起源于Bluetooth4.0版本,至今已发展到5.3 4.0 bluetooth low enerngy 这个阶段低功耗蓝牙的基础框架已经稳定成型,后面版本主要退出新特性和扩展特性,同时保证和4.0的原生兼容性 4.1 multi role(主从…

ESP32开发三_蓝牙开发

蓝牙开发 交流QQ: 1048272975 QQ交流群: 636564526 蓝牙是一种不断创新发展的无线通信技术标准,采用了2.4G ISM频段,在音频传输、数据传输、位置服务、设备组网这些场景有着广泛的应用。 1. 蓝牙概述 蓝牙技术分经典蓝牙(Classic BT)和低…