java课程设计报告(新).docVIP

  1. 1、本文档共25页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
java课程设计报告(新)

Yangtze University College of Arts and Science 课程设计报告 系 部: 机电与信息工程系 专 业: 计算机科学与技术 班 级: 计科5151 姓 名: 尹丛丛 学 号: 201540473 (28) 课程名称: 面向对象程序设计(Java) 指导教师: 付 兵 实习时间: 2016年6月20日 至2016年7月3日 目录 摘要 1 一、 概要设计 2 1.1 游戏规则 2 1.2 游戏界面和操作方式 2 1.3 程序的主要运行过程 2 1.4 本程序需要解决的有关技术问题 2 二、 系统详细设计 3 2.1构建游戏主类TankClient 3 2.2构建坦克类Tank 3 2.3添加炮弹Missile类 5 2.4实现坦克的互相攻击 5 2.4.1让主战打出炮弹 5 2.4.2实现坦克的互相开火 6 2.4.3添加多辆坦克 6 2.4.4让坦克更加智能 7 2.5创建Explode类 8 2.6添加药箱BloodBox 8 2.7添加Home 9 2.8 添加障碍物 9 2.8.1 添加金属墙 9 2.8.2 添加普通墙 10 2.8.3 添加河水 10 2.9添加树林 10 3.0加入图片替换主窗口中的各对象 10 三 游戏最终运行界面 11 四 总结 11 摘要 JAVA是实践性很强的课程。课程设计是加强实践能力的一个强有力手段。通过课程设计可以掌握JAVA的应用、编写、上机调试的基本方法。课程设计要求在完成程序设计的同时能够写出比较规范的设计报告,严格实施课程设计这一环节,对于基本程序设计素养的培养和软件工作者工作作风的训练,将起到显著的促进作用。 本项目介绍了坦克大战的基本构建方法、java的相关技术及本程序的结构分析和具体功能的实现。游戏是在Eclipse3.2环境下编程。它的主要功能有:    1. 能够朝四个方向移动    2. 能够发射子弹互相攻击    3. 敌人能够移动    4. 能够模拟爆炸    5. 能够产生障碍  6. 能够增长生命 本项目重点运用了图形化用户界面GUI,Thread多线程的有关知识,其中涉及了绘图工具的运用,事件处理操作以及图形的碰撞检测等知识点。通过课程设计,使学生巩固所学知识、培养学生动手能力学生用Java语言设计一个完整的应用程序,综合应用所学知识完成软件的分析、设计、调试和总结,提高学生对Java语言的综合应用能力和解决问题的能力。 工作流程图: 键盘监听器 二、游戏的详细设计 2.1 构建游戏主类 在主类中编写一段代码,构造一个窗口。并添加窗口关闭的处理事件,将窗口设置成打小不可变。 主要代码 this.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { System.exit(0); } }); this.setResizable(false); 2.2构建坦克类Tank 创建一个坦克类,用画图工具构造出简单的图形代表坦克,并将坦克加入到主窗口当中。 主要代码实现 public class Tank { …… public void draw(Graphics g) { Color c = g.getColor(); g.setColor(Color.RED); g.fillOval(x, y, 30, 30); g.setColor(c); } } public class TankClient extends Frame{ …… public void paint(Graphics g) { myTank.draw(g); } } 让坦克朝四个方向运动起来,在主类TankClient中启用多线程机制,让系统不断的进行重画。并在Tank类中建立处理按键的方法,实现坦克的手动移动;根据坦克类修改TankClient主类,在主类中注册事件监听器,并调用Tank类中的方法。主类TankClient中使用双缓冲机制消除坦克的闪烁现象。 Tank类当中添加的按键方法 public void keyPressed(KeyEvent e) { int key =

您可能关注的文档

文档评论(0)

celkhn5460 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档