java(J2EE)课程设计报告 (15).doc_第1页
java(J2EE)课程设计报告 (15).doc_第2页
java(J2EE)课程设计报告 (15).doc_第3页
java(J2EE)课程设计报告 (15).doc_第4页
java(J2EE)课程设计报告 (15).doc_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

烟台工程职业技术学院 机电工程 系 计算机应用技术 专业 09 级课程设计(论文) 题 目: JAVA课程设计姓名 学号 指导教师(签名) 二一一年七月十四日JAVA 拼图游戏课程设计报告 【摘 要】拼图小游戏设置很简单,功能很简单的拼图游戏,此游戏适合儿童玩的游戏,此拼图游戏界面很卡通,是以火影隐者的几张图片来制作的,所以很适合小朋友拼图,此游戏设置了三张图,所以当用户玩拼图时有三种选择,可以根据自己的喜好来选择。此游戏是用JAVA语言编写而成,图形界面的实现是用AWT包完成的。在设计类的时候,考虑到简单明了,就用了一个类,作为程序的整体框架,所有的对象和方法都是在默认属性类中创建和实现的,以及为各组件注册事件监听程序也是在默认属性类中实现的。主类完成对象的实例化及显示。这们设计的优点是:条理清晰,容易理解,容易修改。这样设计的缺点是:不利于共享类中的方法。前言一、 课程设计目的通过此次课程设计,巩固所学Java语言基本知识,增进Java语言编辑基本功,掌握JDK、Eclipse、NetBeans IDE 等开发工具的运用,拓宽常用类库的应用。使我们通过该次的课程设计,把所学课程及相关知识加以融会贯通,全面掌握Java语言的编程思想及面向对象程序设计的方法,为今后从事实际工作打下坚实的基础。 本课程设计设计的拼图小游戏, 为喜欢拼图游戏的爱好者提供了很好的平台, 而且能减轻工作压力,增进娱乐。 二、课题设计意义 近年来,Java编程语言作为一种新的编程语言,以其简单性、可移植性和平台无关等优点,得到了广泛的应用,特别是Java编程语言与万维网的完美结合,使其成为网络编程和嵌入式编程领域的首选编程语言。 以一个学期的时间来学习JAVA这门课,我们不但学习了书上理论的东西,还安排了上机操作课。我认为学习一门计算机语言必定离不开实践,只有通过实践我们才能体会到书本上体会不到的东西。所以,我们不仅要认真学习课本理论知识,更重要的是通过上机实践才能增强和巩固我的知识。课程设计是培养我们综合运用所学知识,发现、提出、分析和解决实际问题,锻炼实践能力的重要环节,是我们实践能力与创新精神的综合培养:在实践能力方面培养我们理论与实践相结合的作风,增强了我们将来在人才市场上的竞争力。 所以,对于我们初学者,首先利用课程设计这样的小项目锻炼袭击的科学研究精神和提高创新能力,是很有必要的。 “拼图”游戏是一个经典的游戏,它因操作简单、娱乐性强儿广受欢迎。我们通过所学的JAVA,设计了一个操作简凡、界面美观、功能较齐全的“拼图”游戏。 通过本游戏的开发,达到学习Java技术和熟悉软件开发流程的目的。这个游戏是用图形界面实现的,通过编译解释后,出现一个图形界面,界面一开始出现三张图,选择一张图进入游戏,然后进行拼图。三、课题设计思路 (一)、课题分析 界面要求:用图形界面实现,参考下图:1、 开始界面2、选择一张图的界面四、源代码分析(一)程序所用类的声明用户自定义类类名:pintu作用:实例化对象继承的父类:Applet实现的接口:MouseListener,MouseMotionListener 主要成员变量:private static final long serialVersionUID = 4092544791350653416L;private Image picture;private Graphics buffer;private Image pic;private Image off_pic;private Graphics off_buf;private Image off_screen;private Graphics off_buffer;private Image off_drag;private Graphics off_drag_buf;private int map;private int ran;private int width=0;private int height=0;private int lastx;private int lasty;private int last_downx;private int last_downy;private int stepx;private int stepy;private boolean click;private boolean m_down;private boolean m_drag;private boolean not_redraw;private boolean able;Font font1,font2; Image img,img1,img2;(二) 主要成员方法:public void init() /初始化各部件菜单的定义和事件的监听void initForm() /面板初始化public void paint(Graphics g)/画图方法public void mouseClicked(MouseEvent evt) /单击鼠标时产生的事件public void mouseEntered(MouseEvent evt) /鼠标进入某个区域时产生的事件public void mouseExited(MouseEvent evt) /鼠标退出某个区域时产生的事件public void mouseMoved(MouseEvent evt) /移动鼠标时产生的事件public void mouseDragged(MouseEvent evt) /拖动鼠标时产生的事件public void mousePressed(MouseEvent evt) /按下鼠标时产生的事件public void mouseReleased(MouseEvent evt) /放开鼠标时产生的事件public Point getarea(Point point) /转换坐标boolean wingame()/程序是否结束void initgame()/游戏初始化五、附录import java.awt.*;import java.applet.*;import java.awt.event.* ;public class pintu extends Applet implements MouseListener,MouseMotionListener private static final long serialVersionUID = 4092544791350653416L; private Image picture; private Graphics buffer; private Image pic; private Image off_pic; private Graphics off_buf; private Image off_screen; private Graphics off_buffer; private Image off_drag; private Graphics off_drag_buf; private int map; private int ran; private int width=0; private int height=0; private int lastx; private int lasty; private int last_downx; private int last_downy; private int stepx; private int stepy; private boolean click; private boolean m_down; private boolean m_drag; private boolean not_redraw; private boolean able; Font font1,font2; Image img,img1,img2;/ /程序的初始化 public void init() resize(900,480);/调整窗口的大小pic = new Image 3;off_pic = new Image16;off_buf = new Graphics 16;map = new int 44;ran = new int 15;play(getDocumentBase(),十年.mid); /播放音乐十年.midimg=getImage(getCodeBase(),xxrz1.jpg);img1=getImage(getCodeBase(),xxrz2.jpg);img2=getImage(getCodeBase(),xxrz3.jpg);for(int a=0;a16;a+)mapa/4a%4 = a;for(int a=0;a15;a+)rana=a;click=new boolean 44;MediaTracker tracker= new MediaTracker (this);/要载入的图片pic0=getImage(getCodeBase(),xxrz1.jpg);pic1=getImage(getCodeBase(),xxrz2.jpg);pic2=getImage(getCodeBase(),xxrz3.jpg);tracker.addImage (pic0,0);tracker.addImage (pic1,0);tracker.addImage (pic2,0);trytracker.waitForID (0);catch(InterruptedException e)/设置字体font1= new Font (TimesRoman, Font.BOLD, 48);font2= new Font (TimesRoman, Font.BOLD, 32);width=640;height=480;/初始化主界面initForm();/添加鼠标监听事件addMouseListener(this);addMouseMotionListener(this); /面板初始化 void initForm() this.setBackground (Color.cyan);if(off_drag=null)off_drag = createImage(width/4,height/4);off_drag_buf = off_drag.getGraphics (); public void paint(Graphics g)if(off_screen=null)off_screen = createImage(width,height);off_buffer=off_screen.getGraphics ();if(able)off_buffer.setColor (Color.black );for(int a=0;a4;a+)for(int b=0;b4;b+)if(mapab!=15)off_buffer.drawImage (off_picmapab,b*width/4,a*height/4,this);if(mapab=15)off_buffer.fillRect (b*width/4,a*height/4,width/4,height/4);for(int c=0;c2;c+)off_buffer.drawRect (b*width/4+c,a*height/4+c,width/4-c,height/4-c);if(clickab)off_buffer.setColor(Color.red);for(int d=0;d30 & point.x50 & point.y370 & point.x160 & point.y60 & point.x270 & point.y30 & point.x50 & point.y370 & point.x160 & point.y60 & point.x270 & point.y640 | point.y480)return point;else return point = new Point (point.x/160,point.y/120);/图片初始化void initmap(int stage)picture = createImage(width,height);buffer = picture.getGraphics ();buffer.drawImage (picstage,0,0,640,480,this);for(int a=0;a15;a+)off_pica = createImage(width/4,height/4);off_bufa = off_pica.getGraphics ();off_bufa.drawImage (picture,0,0,width/4,height/4,(a%4)*width/4,(a/4)*height/4,(a%4+1)*width/4,(a/4+1)*height/4,this);initgame();repaint();/程序是否结束boolean wingame()for(int a=0;a4;a+)for(int b=0;b4;b+)if(mapab=a*4+b);else return false;return true;/游戏初始化void initgame()for(int a=0;a4;a+)for(int b=0;b14)temp=0;mapab=rantemp;rantemp=-1;elseranmapab=-1;else map33 = 15; 六、设计心得通过本次Java的课程设计,让我对JAVA编程语言有了深刻的理解,并且让我开拓了视野,增加了知识,从而应用于实践中,这几天的课程设计令我受益匪浅,平时模棱两可的知识点都认真复习并实践了。我对JAVAEE提升了认识,我意识到了我们所学的东西将来都是药付诸实践的,所以一切要从实际情况出发,理论联系实际,这样才能真正发挥我们所具备的能力。经过此次课程设计,我向我成功的目标又迈进了一步。通过此次课程设计,将我本学期所学的JAVA知识得到巩固和应用,在设计的过程中我遇到了很到问题,不过在老师和同学们的帮助和自己的思考下还是很好的完成了。这此课程设计还让我懂得了写程序不能闭门造车,要努力拓宽知识面,开阔视野,拓展思维。它还让我学会了在网上查阅那些无限的资料七、结论语在设计类的时候,考虑到简单明了,就用了一个类,作为程序的整体框架,所有的对象和方法都是在默认属性类中创建和实现的,以及为各组件注册事件监听程序也是在默认属性类中实现的。主类完成对象的实例化及显示。这们设计的优点是:条理清晰,容易理解,容易修改。这样设计的缺点是:不利于共享类中的方法。在本次Java课程设计中,首先要感谢我的指

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论