- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Tank War手把手、一行一行演示项目制作项目的需求单机版程序演示能够四处移动能够打击敌人敌人能够移动能够模拟爆炸能够产生障碍能够增长生命自我介绍项目的针对对象初步掌握了J2SE的同学掌握了常用的一些类掌握了常用的一些知识点写过一些学习的程序(toy program)学习方法不必太关注细节不必非得把某个类所有的细节全了解清楚再动手不必追求完美关键是要写完,要想方设法让它运行起来量变引起质变做这个项目是为了复习J2SE,综合运用J2SE所学的知识初步掌握面向对象编程的基本思想掌握Eclipse开发J2SE程序的基本方法初步掌握Eclipse调试程序的方法掌握编程时一些约定俗成的东西命名/格式 等掌握一些常用的编程方法getters setters持有对方引用定义常量保留程序版本学会版本比较激发大家的学习兴趣做这个项目不是为了不是为掌握软件工程的系统理论瀑布式螺旋递增式不是为了掌握专业游戏的开发方法不应用专门的Game API不是为了掌握专业的设计模式没有刻意去应用设计模式项目的注意事项要敲,一定要动手敲,要一行一行跟着敲看会或者听懂都不算掌握了程序只有写出来才能证明你真正的掌握不要照抄,不要记我做程序的步骤要掌握思路项目所用的工具eclipse 3.2JDK5.0 或以上泛型在5.0后才得到支持项目的预备知识J2SE基础知识面向对象I/O多线程GUI初步事件模型版本0.1功能:产生一个窗口掌握:通过Eclipse建立新的项目为新的项目指定不同的源代码和输出目录指定项目所用的JDK版本通过Eclipse建立新的类注意:类名和方法名的命名见名知意类名首字母大写方法名、变量名首字母小写应用驼峰标识版本0.2功能:添加关闭窗口的事件处理不允许窗口的大小改动掌握:匿名类的用法思考:匿名类的应用场合?类短小、不涉及将来的扩展、不涉及重要的业务逻辑通过Eclipse重写父类的方法注意:没掌握匿名类的先照抄,不写也行不影响最后的运行效果版本0.3wx,y功能:画出代表坦克的实心圆掌握:如何重写paint方法注意:不要改变原来的前景色回顾:paint(Graphics g)方法,窗口重画时自动调用x轴、y轴的方向hxFrame的左上角y版本0.4功能:让坦克运动起来步骤:将位置改变为变量启动线程不断重画思考:为什么使用线程重画,而不是每按下一个键进行一次重画?线程重画更均匀,更能控制重画的速度。按键重画不能解决子弹自动飞行的问题。每次重画改变Tank位置掌握:内部类的使用思考:内部类有哪些好处?什么时候使用内部类?可以方便的访问包装类的方法。不方便公开的,只为包装类服务的类应当定义为内部类。注意:x, y值得含义,指的是小方块的左上角点版本0.41功能使用双缓冲消除闪烁现象原因刷新重画频率太快,paint方法还没有完成逐条显示解决办法将所有东西画在虚拟图片上,一次性显示出来注意如果不能理解透彻就照抄本版本代码,不影响对J2SE的练习功效思考把游戏窗口的大小改变为640 X 480?定义常量以应付将来的改动版本0.5功能:代码重构将以后可能需要多处改变的量定义为常量Frame的宽度和高度常量名一般大写注意:常量一般是public static final的。版本0.6功能:让坦克听从我们的指挥添加键盘监听器类KeyMonitorTankCient添加键盘监听器针对不同的键改变坦克的位置,与重画线程结合产生不同方向运动注意:switch case语句中break语句的运用写程序要循序渐进思考增加100辆坦克到游戏中版本0.7—重要版本功能:将坦克单独包装成类步骤:建立Tank类为Tank类添加成员变量x y添加draw方法,使Tank类独立控制自己的画法添加Tank类处理按键的方法根据Tank类修改TankClient类掌握:面向对象的思考方法细节隐藏、构建单独的类、首先考虑系统中有哪些类合适的方法应该出现在合适的类中思考如何让坦克向8个方向行走?版本0.8功能:让主战坦克向8个方向行走(1)步骤添加记录按键状态的布尔量添加代表方向的量(使用枚举)根据按键状态确定Tank方向根据方向进行下一步的移动(move)版本0.9功能:让主战坦克向8个方向行走(2)步骤处理键抬起的消息修改TankClient相关代码版本1.0功能添加子弹类步骤:添加Missile类添加x,y,dir等属性以及常量添加构造方法, draw方法等必要方法根据不同方向,进行不同的运动在TankClient中模拟一颗子弹new一颗子弹出来画出来注意:不一定一次写到位进行多次试验将步骤分解开来逐一进行调试版本1.1功能:根据主战坦克的方向和位置,打出子弹步骤增加对Ctrl键的按键处理根据“坦克打出一发子弹”这句话,来确定Tank中的方法fire,其返回值为Missle根据Tank方向
原创力文档


文档评论(0)