【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>
下面,我们废话不多说,就开始我们的贪吃蛇小项目。首先,我们打开我们的Eclipse,孤狼用的呢是比较新的版本,Eclipse 4.2.0的,没有Eclipse工具的朋友呢,可以到Eclipse的官方网站http://www.eclipse.org/platform进行下载。在接下来的博文中,孤狼将分多个版本来逐步的完善我们的贪吃蛇游戏。
我们建立一个新的Java项目,Snake01,在这个版本中,我们将先将游戏的窗口创建出来,那么下面,我们就开始Coding吧。最为一名好的程序员,我们最好再一开始就养成比较好的编程习惯,学会建包就是一个好的开始。首先,我们创建游戏的主窗口类GameView类,并将这个类放在com.gulang.snake.view下面,如下图:
接下来,我们开始对GameView进行编码,大家直接看代码,我会在后面进行解释:
package com.gulang.snake.view;
import java.awt.Color;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import javax.swing.JFrame;
public class GameView extends JFrame {
//这个可以暂时不管,生成就可以
private static final long serialVersionUID = 3837225457557850394L;
/** 游戏窗口的标题 */
public static final String GAME_TITLE = "贪吃蛇";
/** 窗口的初始化位置的横坐标 */
public static final int WINDOW_X = 100;
/** 窗口的初始化位置的纵坐标 */
public static final int WINDOW_Y = 100;
/** 窗口的宽度 */
public static final int WINDOW_WIDTH = 800;
/** 窗口的高度 */
public static final int WINDOW_HEIGHT = 600;
/**
* 游戏的构造方法,我们将在这里初始化和游戏相关的数据和信息
*/
public GameView(){
initGameView();
}
/**
* 初始化和游戏的界面相关的信息
*/
private void initGameView() {
//设置游戏窗口的标题
this.setTitle(GAME_TITLE);
//设置窗口的初始化位置
this.setLocation(WINDOW_X, WINDOW_Y);
//设置窗口的大小
this.setSize(WINDOW_WIDTH, WINDOW_HEIGHT);
//设置窗口的背景色
this.setBackground(Color.WHITE);
//给窗口添加关闭的事件
this.addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
//将窗口设置为不可以最大化
this.setResizable(false);
//显示窗口
this.setVisible(true);
}
/**
* 游戏程序从这里开始
* @param args
*/
public static void main(String[] args) {
new GameView();
}
}
下面我将这里面的几个难点进行简单的描述:
- 因为我们要显示一个窗口,因此我们的GameView需要从JFrame进行继承,这是Java为我们提供的一个窗口的父类。当然,你还有其他的组件可以使用,比如说JPanel,我们这里进行简化处理,使用JFrame。
- 大家可以看见我们使用了常量来保存必要的信息,这些也是好的编程习惯的开始,适当的使用常量将改善我们代码的可读性与可维护性。
- 对于下面这段代码,这是在为我们当前的窗口设置监听器,而所谓的监听器呢,简单来说就是我们制定程序在特定的环境下需要执行的代码,下面这段代码的意思就是当程序检测到窗口正在关闭的时候,就执行我们制定的windowClosing中的代码,从而达到退出游戏的作用。
this.addWindowListener(new WindowAdapter() { @Override public void windowClosing(WindowEvent e) { System.exit(0); } });
我把代码都放在迅雷快传上了,大家奔走相告吧,这里给出链接,一篇博文对应一个项目文件,大家直接导入工程就可以运行:
http://kuai.xunlei.com/d/nNdkCUf1HBXTUAQA44e
来源:oschina
链接:https://my.oschina.net/u/554627/blog/97068