编写一个完整的Java Application 程序/*
*--测试类(4)Test类作为主类要完成测试功能①生成Rectangle对象②调用对象的toString方法,输出对象的描述信息
*/
publicclassTest{
Java贪吃蛇怎么编,要有计分 ,计时功能, 开始游戏,结束游戏界面。
如何用Java语言写一个贪吃蛇游戏
设计游戏,首先就要设计界面。首先看一下我设计的一个界面。界面分为左边的游戏区与右边的控制区。游戏区包含“得分信息”和贪吃蛇的游戏区,右边控制区有“开始”“暂停”“停止”按钮,等级选择单选框以及游戏排行榜。
所以我们需要定义swing组件,并在类初始化时初始化这些组件,添加组件。因为后面设计游戏的时候,我们要确切知道游戏区的大小,所以这里设置游戏区固定大小值。本来想用布局来更好的管理,但作者对布局也掌握不够,所以就先设置固定大小吧。
定义我们的游戏。贪吃蛇游戏其实就是包含很多细小网格,然后蛇在网格中移动。蛇由一连串的网格组成,为了视觉效果,蛇身用蓝色标记,食物用红色标记,背景白色。如第一张图片所示。所以,我们需要定义二维数组,保存网格信息,保存蛇身和食物的位置信息等。初始化时,还需要添加键盘事件控制上下左右移动。
食物的位置信息是二维的,所以我简单定义了一个类用来保存二维信息。
接着就是实现游戏的功能了。开始,暂停,停止按钮添加事件控制游戏开始。等级按钮定义游戏难度等。
开始游戏后,我们定义一个定时器。蛇身按照指定的方向移动,方向是通过初始化时添加的键盘事件,键盘的上下左右按钮来控制。蛇身是连续的位置信息,保存到队列中,所以蛇身的移动就是队首增加一个位置,队尾减少位置,然后重新绘画游戏区就可以了。
在蛇身移动时进一步做吃掉食物、撞墙、撞到自己的处理。这是游戏的主要逻辑。
最后,游戏结束我们弹出一个对话框提示是否保存游戏得分。我们制作了排行榜信息,只保留前10名的游戏得分。首先定义了一个实现Comparable接口的游戏得分类,按得分高,时间最早来排序。
游戏结束时保存得分信息,看是否进入到排行榜中。而之前在初始化排行榜组件时就会加载游戏排行榜信息。
通过保存和读取排行榜信息,我们也熟悉一下文件读取操作,还有集合、排序算法的功能。
用JAVA设计游戏:贪吃蛇游戏
用MVC方式实现的贪吃蛇游戏,共有4个类。运行GreedSnake运行即可。主要是观察者模式的使用,我已经添加了很多注释了。 1、 /* * 程序名称:贪食蛇 * 原作者:BigF * 修改者:algo * 说明:我以前也用C写过这个程序,现在看到BigF用Java写的这个,发现虽然作者自称是Java的初学者, * 但是明显编写程序的素养不错,程序结构写得很清晰,有些细微得地方也写得很简洁,一时兴起之 * 下,我认真解读了这个程序,发现数据和表现分开得很好,而我近日正在学习MVC设计模式, * 因此尝试把程序得结构改了一下,用MVC模式来实现,对源程序得改动不多。 * 我同时也为程序增加了一些用JAVA编一个小的贪吃蛇游戏 (要求如下) 求JAVA高手
不合意的自己去修改 import java.awt.*; import java.awt.event.*; public class GreedSnake //主类 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub new MyWindow(); } } class MyPanel extends Panel implements KeyListener,Runnable//自定义面板类,继承了键盘和线程接口 { Button snake[]; /求贪吃蛇Java代码
#include谁帮我写个java贪吃蛇游戏全面的包括得分等功能!谢谢!希望大家帮帮忙!
package snake; import javax.swing.UIManager; import java.awt.*; /** *Title: 贪食蛇游戏
*Description:
*Copyright: Copyright (c) 2005
*Company:
* @author zsb * @version 1.0 */ public class Snake { private boolean packFrame = false; //Construct the application public Snake(相关文章
-
求大神帮我编写Java Application详细阅读
-
java写入数组的时候如何换行详细阅读
用JAVA向文件写入内容时如何实现换行java输出到txt的时候增加换行符的方法如下: package com.anjoyo.test; import java.io.FileWriter; import java.io.IOException; public
-
Java程序cmd运行 java.lang.NoClas详细阅读
如何解决java.lang.NoClassDefFoundError问题NoClassDefFoundError解决示例 当发生由于缺少jar文件,或者jar文件没有添加到classpath,或者jar的文件名发生变更会导致java.lang
- 详细阅读
-
离线版编程软件scratch无法安装详细阅读
小猫编程:如何安装scratch2.0中文版官网上有下载链接,或者直接百度Scratch,也会有安装包可以下载。Scratch支持简体中文,安装后切换下语言就看得懂了。如何在电脑上下载scratch2
-
是这样的,我在珠海市区这里报名了童详细阅读
是这样的,我在珠海市区这里报名了童程童美,问下孩子学习儿童编程是不是会容易造成近视啊?经常用电脑不会导致近视,导致近视的根本原因是近距离用眼时间过长,和姿势不正确导致的。
-
用java编一个程序,实现彩票机功能,有详细阅读
Java 实现彩票程序importjava.util.ArrayList;
importjava.util.Collections;
importjava.util.List;
importjava.util.Random;
publicclassMain{
publicstaticvoidmain(St -
sublime运行 java出现错误详细阅读
sublime运行java这个怎么搞?你先把文件保存,没有保存怎么运行。 比如你把文件八寸为test.java,然后在运行javac test.java,再运行java Hello就可以了,javac是编译,java是运行编译
-
采用JavaBean+Servlet+JSP使用连接详细阅读
怎样掌握Jsp中的DAO模式?怎样运用MVC和Jsp+JavaBean+Servlet?什么是DAO DAO是Data Access Object数据访问接口,数据访问:故名思义就是与数据库打交道。夹在业务逻辑与数据库资
-
java项目依赖问题详细阅读
java导入项目后,在下载依赖时构造工作空间出错新建JAVA项目时,使用执行环境JRE版本选的低一些就可以了。
Java是一门面向对象的编程语言,不仅吸收了C++语言的各种优点,还摒弃了