面向对象的分析与设计
类的划分与俄罗斯方块类似,分层处理
gamePanel需要放置在frame上
通过事件监听实现类之间的沟通
KeyEvent中存放各按键事件
控制类中需要有被控制类的引用
蛇移动的方法:
尾部去掉一个节点,头部加上一个节点
实现容易,LinkedList
int变量表示方向
测试代码与代码同步实现,便于经常执行测试
先实现最基本的操作
逐步修改执行中出现的问题,扩充代码
如何避免无效方向?
每一次按键都进行赋值,到该执行下一步移动时才
与原方向进行比较。即可忽略中间的无效方向
this
增加食物时,是否应该判断生成的点不在蛇身上?
疑问:为什么不将食物也放入ground中?
食物和石头都继承一个父类。对isEaten方法进行重载
看完俄罗斯方块之后,再看贪吃蛇教程会轻松很多。
因为整体的实现方法比较类似。都是同样的开发思路,同样的分层结构设计。
老师依然有着足够的耐心和细致,将代码从无到有的开发过程完整展示出来。
两个实战项目过后,更加深了我对JAVA的兴趣和信心。只等着开始接下来的细节讲解。