编程笔记 2017-08-11
终于有些眉目了。
几个重点的理解点:
- 整个项目结构,使用了观察者模式Listener,或者其他模式,而C++版的没有使用设计模式,所以代码更加简短一些;
- 在GameController类中有一个私有类,ShapeDropDriver,用来循环控制图形下落,while循环不止;
- GamePanel类的方法,gameStart调用了repaint方法,repaint是java原生方法,其调用了paintComponent
如图
- GameController类中ground,shape,将会传入到类GamePanel中,这就解释了GamePanel数据来源的问题;
- ground的初始化在GameController的方法gameCreate中,可用功了解之。
此外,重点查阅了java的事件编程,ActionEvent云云;