Java如何实现贪吃蛇

2025-10-22 04:12:30

1、游戏的设计?

(2.1):需要几个对象(类)?

面向对象的设计原则:涉及到的每个事物都应该用相应的类来表示。

(2.1.1):GamePanel  //显示面板。

(2.1.2):Snake   //蛇。

(2.1.3):Food  //食物。

(2.1.4):Grouund //石头。

Java如何实现贪吃蛇

Java如何实现贪吃蛇

2、2.2):每个类有什么方法?

(2.2.1):GamePanel:显示作用。

void display(); //显示。

(2.2.2):Snake :游戏的骨架。特性:不操作时他会以原来的方向和默认的速度移动。

void move(); //移动(走一步)。

void changeDirection();//改变方向。

void eatFood();//吃食物(身体变长)。

boolean isEatBody();//蛇是否吃到了自己的身体。

void drawMe();//显示。

这里就有个问题了。为什么不放在游戏显示面板里面?

先讲一个例子吧。人在黑板上画圆。这里有三个对象。那么需要把画圆的方法分配给谁呢。答案当然是圆啊。只有他最清楚画圆需要什么(圆心、半径)。所以关于蛇的显示当然放在蛇这个类里面。

Java如何实现贪吃蛇

Java如何实现贪吃蛇

3、2.2.3):Food:游戏的灵魂。增加游戏的趣味性。

boolean isSnakeEatFood(Snake);//判断蛇是否吃到了食物(身体变长的条件)。

void drawMe();//显示。

(2.2.4):Ground:游戏的血肉。增加游戏的难度。

Boolean isSnakeEatRock(Snake);//蛇是否吃到了石头。

void drawMe();//显示。

Java如何实现贪吃蛇

Java如何实现贪吃蛇

4、(3)类之间的关系。

Snake 定时移动,每移动一次后都需要重新显示,他又不能直接操控GamePanel,怎么办呢?答案是通过事件监听建立联系。

那么接口就来了 。

SnakeListener

void snakeMoved(Snake);

接下来就是打开eclipse,开始码吧。。。。

(4)代码。

Java如何实现贪吃蛇

Java如何实现贪吃蛇

5、后续代码:

Java如何实现贪吃蛇

Java如何实现贪吃蛇

Java如何实现贪吃蛇

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢