ImageVerifierCode 换一换
格式:DOCX , 页数:11 ,大小:111.62KB ,
资源ID:6677277      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/6677277.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(JAVA小游戏华容道软件设计报告.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

JAVA小游戏华容道软件设计报告.docx

1、JAVA小游戏华容道软件设计报告 命题方式: 单独命题 佛山科学技术学院20132014学年第 二 学期可视化编程技术课程期末考试试题A专业、班级: 12教技2班 姓名: 何颖康 学号: * 成绩: 根据可视化编程技术这门课程的内容,结合自己熟悉的课题及自己的实际情况来自选设计题目,也可以选择老师提供的参考题目设计。1参考设计题目1)电子钟;2)简单计算器;3)五子棋;4)微波炉倒计时部件2上交文本格式(参考设计报告模板)(1)标题;(2)班级、姓名、学号;(3)摘要(4)关键词;(5),正文; (6)参考文献;(7)设计总结(自己所做的主要工作与体会)3作品必须有一个自己独立完成的模块,按照

2、功能多少及强度评分。4上交作品两项(1) 课程设计报告电子完整版(含程序),统一放入班级光盘中;(2) 考试作品(从设计报告中整理5-6页+本封面)用A4白纸打印。进行接新佛山科学技术学院可视化编程技术课程设计报告JAVA小游戏“华容道”设计* *学 号: *年级专业:12级教育技术学2班* *学 院: 教育科学学院广东佛山提交日期:2014年6月 摘要:本程序根据手机游戏“智力大爆炸”为原版,加入历史元素,将娱乐、学习和思考集于一体。程序执行后,点击相应的人物,然后按上下左右键可以移动。点击重新开始按钮,可以将各个人物的位置重置。如果目的地的面积能够容得下当前要移动的人物,则认为可以移动。当

3、曹操移动到“曹操到达该位置”的位置的时候,认为程序结束。关键字:java小游戏,华容道,益智,历史元素,曹操移动 前言随着科学技术的不断发展,计算机已经成为我们工作学习和生活中不可缺少的工具。文本编辑器是个人计算机最司空见惯的应用程序了,在学习了Java语言之后,我决定使用Java语言编写一个简单的计算器,可以实现简单的运算功能,满足日常基本的工作学习和娱乐需要。Java是由Sun公司开发的新一代纯面向对象的网络编程语言。其目标是建立一种在任意种机器、任一种操作系统的网络环境中运行的软件,实行所谓的“程序写一次,到处运行”的目标。正因为如此,Java已成为当今Internet上最流行、最受欢迎

4、的一种程序开发语言。Java开发小组把Java按特性分为基本版、移动版、企业版,每个版本有一个软件开发包。Java基本版本叫Java 2标准版(Java 2 Standard Edition,J2SE),它包含建立Java应用程序或者是Applet所需的应用程序编程接口(API)。Java 2移动版(The Java 2 Mobile Edition,J2ME)包含创建无线Java应用程序的API。还有Java 2企业版(The Java 2 Enterprise,J2EE)是J2SE的增强版本,包含建立多层架构应用程序API。Java语言是由C+语言发展起而来的,是一种彻底的面向对象的程序设

5、计语言。作为一种纯面向对象的程序设计语言,它非常适合大型软件的开发。Java语言去掉了C+语言的一些容易引起错误的特性。Java语言的特点有:面向对象、跨平台、安全性、多线程和图形功能强。 详细设计(1)编程思路:因为首先要实现华容道游戏的整体功能,所以首先生成游戏中的主人公:要生成游戏中的十个人物,就要用到人物类People,首先通过语句People people=new People10定义一个可以存放十个变量的数组,再通过people0=new People(0,曹操,104,54,100,100,this)等九话生成十个人物,最后通过people9.requestFocus()设置焦点

6、。然后,因为要设置华容道的界面信息,所以用到了Graphics类,首先通过语句g.setColor(Color.cyan)来设置要使用的颜色,然后通过g.fillRect()分别设置了左右上下四部分边界的填充颜色,最后通过g.drawString()函数写出提示曹操逃出位置和按键规则给用户参考。最后,因为要实现人机交互的效果,所以要响应键盘事件,这一操作是在函数public void keyPressed(KeyEvent e)中完成的:首先通过语句People man=(People)e.getSource()获取事件源,然后通过语句if(e.getKeyCode()=KeyEvent.VK

7、_DOWN)响应用户按向下光标的操作,通过语句if(e.getKeyCode()=KeyEvent.VK_LEFT)响应用户按向左光标的操作,通过语句if(e.getKeyCode()=KeyEvent. VK_RIGHT)响应用户按向右光标的操作,通过语句if(e.getKeyCode()=KeyEvent. VK_UP)响应用户按向上光标的操作,最后通过函数public void actionPerformed(ActionEvent e)将界面所有控件复位,实现重新开始的功能。测试分析代码编写完毕,存盘为:C: j2sdk1.4.0javaprograms HuaRongRoad.jav

8、a。打开计算机的命令提示符窗口,然后在命令提示符窗口中,定位到javaprograms目录,输入javac HuaRongRoad.java 来编译程序,最后将程序加载到网页上。在javaprograms文件夹下新建一个记事本文件,内容为,然后保存为HuaRongRoad.html的网页文件。本例制作完毕,用浏览器打开HuaRongRoad.html文件便可以看到制作效果。程序清单:/HuaRongRoad.javaimport java.awt.*; import java.applet.*; import java.awt.event.*; class People extends But

9、ton implements FocusListener /代表华容道人物的类 Rectangle rect=null; int left_x,left_y;/按扭的左上角坐标 int width,height; /按扭的宽和高 String name; int number; People(int number,String s,int x,int y,int w,int h,HuaRongRoad road) super(s); name=s; this.number=number; left_x=x;left_y=y; width=w;height=h; setBackground(Co

10、lor.orange); road.add(this); addKeyListener(road); setBounds(x,y,w,h); addFocusListener(this); rect=new Rectangle(x,y,w,h); public void focusGained(FocusEvent e) setBackground(Color.red); public void focusLost(FocusEvent e) setBackground(Color.orange); public class HuaRongRoad extends Applet impleme

11、nts KeyListener,ActionListener People people=new People10; Rectangle left,right,above ,below;/华容道的边界 Button restart=new Button(重新开始); public void init() setLayout(null); restart.setBackground(Color.yellow); add(restart); restart.setBounds(5,5,80,25); restart.addActionListener(this); people0=new Peop

12、le(0,曹操,104,54,100,100,this); people1=new People(1,关羽,104,154,100,50,this); people2=new People(2,张飞,54, 154,50,100,this); people3=new People(3,刘备,204,154,50,100,this); people4=new People(4,张辽,54, 54, 50,100,this); people5=new People(5,曹仁,204, 54, 50,100,this); people6=new People(6,兵 ,54,254,50,50,th

13、is); people7=new People(7,兵 ,204,254,50,50,this); people8=new People(8,兵 ,104,204,50,50,this); people9=new People(9,兵 ,154,204,50,50,this); people9.requestFocus(); left=new Rectangle(49,49,5,260); people0.setForeground(Color.white) ; right=new Rectangle(254,49,5,260); above=new Rectangle(49,49,210,5

14、); below=new Rectangle(49,304,210,5); public void paint(Graphics g) /画出华容道的边界 g.setColor(Color.cyan); g.fillRect(49,49,5,260);/left g.fillRect(254,49,5,260);/right g.fillRect(49,49,210,5); /above g.fillRect(49,304,210,5);/below /提示曹操逃出位置和按键规则 g.setColor(Color.blue); g.drawString(点击相应的人物,然后按键盘上的上下左右箭

15、头移动,100,20); g.setColor(Color.red); g.drawString(曹操到达该位置,110,300); public void keyPressed(KeyEvent e) People man=(People)e.getSource();/获取事件源 man.rect.setLocation(man.getBounds().x, man.getBounds().y); if(e.getKeyCode()=KeyEvent.VK_DOWN) man.left_y=man.left_y+50; /向下前进50个单位 man.setLocation(man.left_

16、x,man.left_y); man.rect.setLocation(man.left_x,man.left_y); /判断是否和其它人物或下边界出现重叠,如果出现重叠就退回50个单位距离 for(int i=0;i10;i+) if(man.rect.intersects(peoplei.rect)&(man.number!=i) man.left_y=man.left_y-50; man.setLocation(man.left_x,man.left_y); man.rect.setLocation(man.left_x,man.left_y); if(man.rect.intersec

17、ts(below) man.left_y=man.left_y-50; man.setLocation(man.left_x,man.left_y); man.rect.setLocation(man.left_x,man.left_y); if(e.getKeyCode()=KeyEvent.VK_UP) man.left_y=man.left_y-50; /向上前进50个单位 man.setLocation(man.left_x,man.left_y); man.rect.setLocation(man.left_x,man.left_y); /判断是否和其它人物或上边界出现重叠,如果出现

18、重叠就退回50个单位距离 for(int i=0;i10;i+) if(man.rect.intersects(peoplei.rect)&(man.number!=i) man.left_y=man.left_y+50; man.setLocation(man.left_x,man.left_y); man.rect.setLocation(man.left_x,man.left_y); if(man.rect.intersects(above) man.left_y=man.left_y+50; man.setLocation(man.left_x,man.left_y); man.rec

19、t.setLocation(man.left_x,man.left_y); if(e.getKeyCode()=KeyEvent.VK_LEFT) man.left_x=man.left_x-50; /向左前进50个单位 man.setLocation(man.left_x,man.left_y); man.rect.setLocation(man.left_x,man.left_y); /判断是否和其它人物或左边界出现重叠,如果出现重叠就退回50个单位距离 for(int i=0;i10;i+) if(man.rect.intersects(peoplei.rect)&(man.number

20、!=i) man.left_x=man.left_x+50; man.setLocation(man.left_x,man.left_y); man.rect.setLocation(man.left_x,man.left_y); if(man.rect.intersects(left) man.left_x=man.left_x+50; man.setLocation(man.left_x,man.left_y); man.rect.setLocation(man.left_x,man.left_y); if(e.getKeyCode()=KeyEvent.VK_RIGHT) man.lef

21、t_x=man.left_x+50; /向右前进50个单位 man.setLocation(man.left_x,man.left_y); man.rect.setLocation(man.left_x,man.left_y); /判断是否和其它人物或右边界出现重叠,如果出现重叠就退回50个单位距离 for(int i=0;i10;i+) if(man.rect.intersects(peoplei.rect)&(man.number!=i) man.left_x=man.left_x-50; man.setLocation(man.left_x,man.left_y); man.rect.s

22、etLocation(man.left_x,man.left_y); if(man.rect.intersects(right) man.left_x=man.left_x-50; man.setLocation(man.left_x,man.left_y); man.rect.setLocation(man.left_x,man.left_y); public void keyTyped(KeyEvent e) public void keyReleased(KeyEvent e) public void actionPerformed(ActionEvent e) this.removeA

23、ll(); this.init(); 参考文献林良信 Java JDK 6 学习笔记 刘浦迎 谢春 java程序设计实用教程 科学出版社 张白一 崔尚林 面向对象程序设计java 西安电子科技大学出版社潘浩 李芙玲 Java程序设计 清华大学出版社设计总结(自己所做的主要工作与体会)经过一个学期的JAVA学习,对JAVA编程有了一定的认识,JAVA是一门很有趣的课程,虽然在编辑程序的时候比较有难度,但是当把程序写出来的时候,心理的满足感是无法形容的。但是我的语言基本功比较差,所以做起来比较吃力,通过请教老师和同学,终于把我想要的程序写出来,这段时间可以说是最充实又吃力的一段时间。 通过这次实训

24、我的体会归纳为以下4点:1. 态度第一,摆正自己的心态,不要以为什么东西上网搜搜就可以了,一定要有自己的东西。只有自己付出过,当程序运行成功时的那种喜悦才会令自己有一种莫名的自豪感。态度决定一切!2. 兴趣是关键,因为有兴趣,所以才会很想充分理解一切细节。又因为理解,所以许多原本片片断断的知识都可以渐渐互相融会贯通,累积技术能量,理论和实务之间的藩篱被打破了,学习效率倍增。学习并快乐着!3. 敢于挑战,不安于现成的程序,要敢于用多种方法实现一个目的。现在的网络科技很发达,想要一个源程序的确很简单,所以很多人都是在自己都不明白题目要求时,就可以在网上搜到一模一样的代码,根本没有自己的东西。挑战自我是项艰巨的任务。只有坚持自己多看代码多写程序才会有更多的收获。4. 不懈追求,要对源代码进行不断地完善,要尽可能地实现课题所要求的功能。对初学者来说,大量地写程序是必要的,但过了某个阶段之后,写程序所带来的技术能力成长已经到了极限,还不如多花一点时间看书,学新技术和新观念。可以从实现源程序功能着手,比如添加写模块啊什么的,实现更多功能。看着自己编的程序能成功运行,这样自己会更感兴趣,也就会乐此不疲。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1