javaGUI开发俄罗斯方块游戏.doc
《javaGUI开发俄罗斯方块游戏.doc》由会员分享,可在线阅读,更多相关《javaGUI开发俄罗斯方块游戏.doc(29页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1 前 言Java语言是美国Sun Microsystem的James Gosling、Pratrick Naughton及Mike Sheridan等人于1991年精心设计出来的计算机编程语言,其构想在于实现使用同一种编程语言所写出来的程序可以在不同的平台上运作。这种架构对于消费性电子产品而言是具有革命性的,因为在消费性电子产品中的处理器及操作系统各不相同,要在这些平台上开发程序必须要了解各个平台的特性,以及其提供的API使用方式,分别开发不同的版本才能执行,影响应用程序的普及性。近几年,由于微处理器性能的大幅提升,加上无线通讯技术的突破,手持式电脑设备开始受到大众的青睐。短短几年内,电脑已
2、经升级了几代产品,普及率逐年攀升,生产效率不断上升,产品价格比个人电脑的摩尔定律有更惊人的下调,以至电脑是大多是城市居民不可缺少的一件随身设备。继短信、彩信等服务之后,中国移动提供基于Java的百宝箱业务,应用产品遍及商务应用、信息获取、英汉互译、游戏娱乐等多媒体领域。为了适应移动数据的发展,推动无线电子商务等业务的发展,J2SE既用于嵌入式系统的Java被引入电脑领域。J2SE的出现实际上是Java技术的回归。作为Java2平台的一部分,J2SE与J2ME、J2EE一起,为应用的客户端和服务器端建立了完整的开发、部署环境。随着J2SE的应用,它为移动互联引入了一种新的模型,既允许电脑可以从互
3、联网上下载各种应用程序,并在电脑创造可执行环境离线运行这些程序。由于定义了可执行下载的标准,并在电脑上创立了可执行环境和程序开发语言,由此,在电脑业第一次为软件开发商创造了巨大的商业机会,电脑用户在得到丰富应用体验的同时,也大大提高了运营商的网络流量。随着通信技术的发展和电脑的普及,电脑游戏的开发技术越来越为人们所关注。以J2SE为开发平台,利用Java提供强大工具,不但可以在电脑上实现静态HTML技术所无法实现的计算处理、数据存储、与服务器的通信等功能,而且能够开发各种电脑游戏。JAVA语言继承了basic语言易学易用的特点,特别适合于初学者学习windows系统编程。随着21世纪信息社会的
4、到来,电脑在人们的工作和生活中的深入,要求我们越来越多地与电脑打交道,为了使用户在繁忙的日程工作中得到放松,于是出现了各种各样的休闲软件,如聊天工具,游戏等等。于是我们小组着手设计开始一个这样的电脑游戏软件。通过这学期来对J2SE技术的学习,我初步掌握了JAVA语言的最基本的知识,于是在指导老师的指导下动手用J2SE编写俄罗斯方块电脑游戏。无可争议,俄罗斯方块是有史以来最伟大的游戏之一。它是永恒的娱乐经典,但它实际上又和那些传统的经典娱乐方式不同,因为它的本质是电子化的,所以它的确属于现代产物。俄罗斯方块举世闻名的游戏性,在该游戏新鲜出炉时就显得非常直观。某些与坠落的玩具碎片和它们的形状有关的
5、东西,使得哪怕新手也会很自然地企图把它们排列起来,并加以适当组合,就好似俄罗斯方块触动了我们某些内在的感官,使得哪怕是我们当中最杂乱无章的人也要把事情整理妥当。 在曾经发布过的所有游戏中,俄罗斯方块还被认为是仅有的一个能够真正吸引广泛人群的作品。某些批评家也许会声称,俄罗斯方块要比过去二十年间出现的任何东西都要浪费人们的时间。至于我们,则要欣然提名它为GameSpot评选出的历史上最伟大游戏之一。为了怀念经典,也为了能够给大多的计算机用户在工作之余找到一个休闲、娱乐的一个方式,我们小组开始着手用JAVA语言开发一个经典的俄罗斯方块游戏。2 工程概况2.1 项目名称:俄罗斯方块2.2 设计平台J
6、2SE是Java 2的一个组成部分,它与J2ME、J2EE并称。根据Sun的定义:J2SE是一种高度优化的Java运行环境,主要针对消费类电子设备的,例如蜂窝电话和可视电话、数字机顶盒、汽车导航系统等等。J2SE技术在1999年的JavaOne Developer Conference大会上正式推出,它将Java语言的与平台无关的特性移植到小型电子设备上,允许移动无线设备之间共享应用程序。Java2平台包括:标准版(J2SE)、企业版(J2EE)和微缩版(J2ME)三个版本。J2SE,J2ME和J2EE,这也就是SunONE(Open NetEnvironment)体系。J2SE就是Java2
7、的标准版,主要用于桌面应用软件的编程;J2ME主要应用于嵌入式系统开发,如手机和PDA的编程;J2EE是Java2的企业版,主要用于分布式的网络程序的开发,如电子商务网站和ERP系统。Standard Edition(标准版) J2SE 包含那些构成Java语言核心的类。比如:数据库连接、接口定义、输入/输出、网络编程Enterprise Edition(企业版) J2EE 包含J2SE 中的类,并且还包含用于开发企业级应用的类。比如:EJB、servlet、JSP、XML、事务控制Micro Edition(微缩版) J2ME 包含J2SE中一部分类,用于消费类电子产品的软件开发。比如:呼机
8、、智能卡、手机、PDA、机顶盒简单讲就是:J2SE: java 2 Standard edition (java 2 标准版)J2EE: java 2 enterprise edition( Java 2 企业版)J2ME: java 2 micro edition (Java 2 微缩版) 他们的范围是:J2SE包含于J2EE中,J2ME包含了J2SE的核心类,但新添加了一些专有类应用场合,API的覆盖范围各不相同。笼统的讲,可以这样理解:J2SE是基础;压缩一点,再增加一些CLDC等方面的特性就是J2ME;扩充一点,再增加一些EJB等企业应用方面的特性就是J2EE。补充一点J2EE更恰当的
9、说,应该是JAVA2企业开发的技术规范,不仅仅是比标准版多了一些类。J2EE又包括许多组件,如Jsp, Servlet, JavaBean, EJB, JDBC, JavaMail等。J2SE商业版本,标准版本 (Java2 Standard Edition) 定位在客户端,主要用于桌面应用软件的编程。J2SE 包含那些构成Java语言核心的类。 比如:数据库连接、接口定义、输入/输出、网络编程J2SE 是J2EE的基础,他大量的JDK代码库是每个要学习J2EE的编程人员必须掌握的。可以把Configuration 当作是J2SE 对于两种类型嵌入式装置的规格,而这些规格之中定义了这些装置至少
10、要符合的运算能力、供电能力、记忆体大小等规范,同时也定了一组在这些装置上执行的 Java 程序所能使用的类别函式库、这些规范之中所定义的类别函式库为 Java 标准核心类别函式库的子集合以及与该型态装置特性相符的扩充类别函式库。比方就CLDC 的规范来说,可以支援的核心类别函式库为java.lang.* 、java.io.*、java.util.*,而支援的扩充类别函式库为java.microedition.io.*。区分出两种主要的Configuration 之後,J2SE 接著在定义出Profile的概念。Profile 是架构在Configuration 之上的规格。之所以有Profil
11、e的概念,是为了要更明确地区分出各种嵌入式装置上Java 程序该如何开发以及它们应该具有哪些功能。因此Profile 之中定义了与特定嵌入式装置非常相关的扩充类别函式库,而 Java 程序在各种嵌入式装置上的使用者介面该如何呈现就是定义在Profile 里头。Profile 之中所定义的扩充类别函式库是根据底层Configuration 内所定义的核心类别函式库所建立。与J2ME和J2EE相比,J2SE总体的的运行环境和目标更加多样化,但其中每一种产品的用途却更为单一,而且资源限制也更加严格。为了在达到标准化和兼容性的同时尽量满足不同方面的需求,J2SE的架构分为Configuration、P
12、rofile和Optional Packages(可选包)。它们的组合取舍形成了具体的运行环境。Configuration主要是对设备纵向的分类,分类依据包括存储和处理能力,其中定义了虚拟机特性和基本的类库。已经标准化的Configuration有- Connected Limited Device Configuration(CLDC)和Connected Device Configuration(CDC)。Profile建立在Configuration基础之上,一起构成了完整的运行环境。它对设备横向分类,针对特定领域细分市场,内容主要包括特定用途的类库和API。CLDC上已经标准化的Pro
13、file有Mobile Information Device Profile ( MIDP)和Information Module Profile(IMP),而CDC上标准化的Profile有Foundation Profile(FP)、Personal Basis Profile(PBP)和Personal Profile(PP)。可选包独立于前面两者提供附加的、模块化的和更为多样化的功能。目前标准化的可选包包括数据库访问、多媒体、蓝牙等等。开发Java ME程序一般不需要特别的开发工具, 开发者只需要装上Java SDK 及下载免费的 Sun Java Wireless Toolkit 就
14、可以开始编写Java ME程式,编译及测试, 此外目前主要的IDE(Eclipse 及 NetBeans)都支持 Java ME 的开发,个别的电脑开发商如 Nokia 及 Sony Ericsson 都有自己的SDK, 供开发者在开发出兼容于他们的平台的程序。2.3 程序设计思想游戏作为人们日常生活的一个重要的娱乐项目,也带动了巨大的游戏相关产业市场的发展。游戏平台从游戏机、电视游戏,到pc游戏,到电脑游戏,中间经历了很多的技术的变革。随着新技术的发展和人们生活水平的提高,电脑开始逐渐普及,电脑以其小巧便捷,方便的特性成为人们的必备通讯工具。而基于电脑平台的电脑游戏也就拥有了巨大的市场空间,
15、随着3g的开通和应用,电脑游戏必将迎来新的一轮游戏热潮。游戏是用来给大家娱乐的,所以要能在使用的过程中给大家带来快乐,消除大家的疲劳,所以我们在游戏中添加了漂亮的场景,设置了过关升级的功能,激发大家的娱乐激情。从游戏的基本玩法出发,主要就是俄罗斯方块的形状和旋转,我们在设计中在一个图片框中构造了一个4*4的网状小块,由这些小块组合成新的形状,每四个小块连接在一起就可以构造出一种造型,因此我们总共设计了7种造型,每种造型又可以通过旋转而变化出2到4种形状,利用随机函数在一个预览窗体中提前展示形状供用户参考,然后将展示的形状复制到游戏窗体中进行摆放,在游戏窗体中用户就可以使用键盘的方向键来控制方块
16、的运动,然后利用递归语句对每一行进行判断,如果有某行的方块是满的,则消除这行的方块,并且使上面的方块自由下落,其中,方块向下的速度是有时钟控件控制的,在游戏中,用户也可以使用向下键加快下落速度,定义一个变量,对消除的函数进行记录,最后就可以得出用户的分数,用if 语句对分数判断,达到一定的积分就可以升级到下一个档次。俄罗斯方块游戏设计的主要步骤为以下方面:(1)游戏界面的设计。(2)俄罗斯方块的造型。(3)俄罗斯方块的旋转。(4)俄罗斯方块的运动情况(包括向左,向右和向下)。(5)俄罗斯方块的自动消行功能。(6)游戏级别的自由选择。(7)游戏速度的自由选择。(8)游戏得分的计算。(9)游戏菜单
17、选项的设计及功能实现。2.4 主要实现的功能我们开发的俄罗斯方块游戏,主要实现了以下几种功能:1.可以灵活控制方块在图形框中运动。2.游戏过程中方块可以自由旋转。3.当某一行的方块排列满时,将自动将这一行方块消除,然后将上面所有方块向下移动,可以支持连续消行。4.游戏前可以选择游戏的速度和游戏的等级,游戏速度既为方块下落速度,游戏等级为初始游戏时在基层随机生成一定行数的无规律方块,生成的行数由你来选择,每行至少产生5个以上的无规律方块,这样增加了游戏难度,对于游戏高手来说,无疑不是一个新的挑战。5.游戏的得分支持积分,并且按照公式:得分 = 原来分数+ 100 * (2 同时消除的行数-1),
18、这样,你同一时间消除的行数越多,你的得分也就越高,当游戏积分到了一定时可以自动升级,这个升级指速度升级。6.游戏中提供了一个漂亮的场景,给你带来无限激情。3 开发背景随着通信技术的发展和电脑的普及,电脑游戏的开发技术越来越为人们所关注。以J2SE为开发平台,利用Java提供强大工具,不但可以在电脑上实现静态HTML技术所无法实现的计算处理、数据存储、与服务器的通信等功能,而且能够开发各种电脑游戏。JAVA自从20世纪90年代早期诞生以来,以其强大的功能迅速为广大程序员们所接受。从2001年开始,日本的国内的移动电话开始搭载Java。使用本来就是一种程序语言的Java之后,就可以在移动电话上完成
19、以往静态的HTML内容所无法达成的计算处理、数据存储、与服务器的通信等等。如果能利用Java上其他丰富功能,那么就可以实现更多的功能。随着电脑游戏的发展,国内外各大开发商纷纷运用Java进行电脑游戏开发。J2SE作为一种基于Java的便携设备开发平台,在各大电脑开发公司得到了广泛应用。小游戏制作的目的是满足了人们休闲的需要,在紧张工作之余休闲类的小游戏能够给人带来最大程度的放松,也可以增进人们之间的交流,沟通,方便人们娱乐的目的。另外也通过本程序将几年来所学的专业知识和其他方面的知识融入到实际应用中。通过此次课题的设计,掌握如何制作一个俄罗斯方块游戏软件,以及制作游戏软件的整个流程,制作游戏软
20、件的步骤,为以后的就业工作打下基础。本课题拟研究基于J2SE的电脑游戏开发技术以及其特点,开发一个俄罗斯方块游戏,具体研究内容如下:1、电脑游戏开发以及J2SE的基本理论和J2SE类库的使用;2、J2SE体系结构的研究;3、J2SE API的研究; (1)应用程序的研究; (2)类库研究; (3)各事件发生器的应用。4、开发工具的应用和开发环境的设置。其中J2SE API的研究为重点,本课题将通过一个具体的电脑游戏-俄罗斯方块的开发来研究以上内容。J2SE简介 现在JAVA-JAVA2 Platform大致可分为J2SE、J2EE、J2ME三类。J2SE为JAVA-JAVA2 Platform
21、 的标准版,通常在PC上使用的JAVA。J2EE是在J2SE的API上,扩展了给企业使用EJB与Servlet等主要使用在服务器上的功能。而J2SE则是面向家电和通信工具等微小设备。J2SE的目标是微小设备,这类设备有许多种类,在这些设备的J2SE当中,定义了CDC(Connected Device Configuration),CLDC(Connected Limited Device Configuration)这两个Configuration。CDC是以能用在个人网关、下一代移动电话、PDA(个人数字助理)、家电设备、POS终端、车辆导航系统等上运行为前提设计出来的。CLDC,是以能使用
22、在移动电话、PDA(个人数字助理)、家电设备、POS终端等上面为前提设计出来的。J2SE 体系结构配置和简表:配置定义了一个设计在一系列类似硬件上运行的Java平台的能力。J2SE的目标是家电与嵌入式设备,这类设备有很多种类,对应这些设备的J2SE当中,定义了CDC(连接设备配置)和CLDC(受限接设备配置)两个配置,配置所提供的类函数只有Java.lang, Java.io,Java.util包等J2SE等核心类的子集。CLDC是与电脑相关的,它实际是定义一个设备制造商用来实现Java运行环境的标准,第三方开发者只需要遵循这个标准。CLDC主要影响Java开发和软件发布的以下方面:1)目标设
23、备的特性;2)安全模型:安全模型有两个部分,虚拟机和应用程序安全。虚拟机安全层的目的是保护下面的设备不受任何执行代码可能引起的损害。开发环境(1)开发的硬件环境:CPU C1.7HZ/Maxor 40G/DDR 256M/CD-ROW 40X (2)开发软件:JDK1.6 目标硬件环境:1:显示: 96*54象素,1位颜色, 大约1:1的象素比例;2:输入:(a)单手键盘或者小键盘;(b)双手的QWERTV键盘;(c)触摸屏。 3)内存 (a)128KB非易失性内存,供MIDP组件使用;(b)8KB的非易失性内存,供应用程序生成的永久数据使用;(c)32KB的易失性内存,供Java堆使用。本游
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- javaGUI 开发 俄罗斯方块 游戏
限制150内