俄罗斯方块Demo
来源:互联网 发布:淘宝话费充值店铺介绍 编辑:程序博客网 时间:2024/06/05 18:28
起因
其实是面京东伤心了,问啥啥不会,就拿个项目认真写写,写啥呢?俄罗斯方块呗;主要其实想玩一下io还有序列化;现在都基本实现了一下,下一步就是认真看看这两东西,或者就是看看socket方面的东西,反正就是一句话,玩项目,看书,巩固基础;
代码传送门
类图
主要参考 这个代码有一些问题,我都改掉了;
MVC的架构还是很清楚的吧;
具体类图如下:
遇到的问题
- 游戏方面的问题,形状在碰到墙后,其实是可以旋转的,所以就写了半天,但是还是会有bug的,但是我发现游戏嘛,和代码关系也少,就不继续了;
- 线程方面,因为要暂停线程,使形状不再下降,所以就需要wait()了,然后这里遇到的主要问题就是synchronized() 锁的是谁了?以下面的代码为例,必须明确书写锁住对象,否则就会出现线程监视器不对的问题
public synchronized void continueThread() { /* 唤醒线程 */ synchronized (shapeDriver) //必须锁住线程对象,否则将报错 { suspended = false; System.out.println("akjhjkahfskfhlasfk"); shapeDriver.notify(); } }
- 序列化部分,其实很简单;但就是因为很简单所以等同于没学。。。。;
- 各种小问题吧,由于参考代码是有问题的,所以就很麻烦;比如有一处shapelistene,它是随着面板初始化,有时候成功,有时候失败;成功就没有问题,失败就完蛋;所以就改成了共享对象放在了构造函数里;这样就不会有问题;
- UI部分编程简直了。。。。;
0 0
- 俄罗斯方块Demo
- 俄罗斯方块小demo
- 俄罗斯方块
- 俄罗斯方块
- 俄罗斯方块!
- 俄罗斯方块
- 俄罗斯方块
- 俄罗斯方块
- 俄罗斯方块
- 俄罗斯方块
- 俄罗斯方块
- 俄罗斯方块
- 俄罗斯方块
- 俄罗斯方块
- 俄罗斯方块
- 俄罗斯方块
- 俄罗斯方块
- 俄罗斯方块
- VIM插件YouCompleteMe安装与配置
- 113. Path Sum II
- VMware ubuntu 安装JDK ultraiso
- C++sort函数
- 日记2016.4.27
- 俄罗斯方块Demo
- 363. Max Sum of Rectangle No Larger Than K
- FastDFS简介及搭建
- CCF-CSP-2015-3-2 数字排序
- hdu4815- Little Tiger vs. Deep Monkey-概率dp或者背包计数
- java多线程2
- Python信号处理
- luogu P1049 装箱问题
- Openresty (nginx + lua)