登录

  • 登录
  • 忘记密码?点击找回

注册

  • 获取手机验证码 60
  • 注册

找回密码

  • 获取手机验证码60
  • 找回
毕业论文网 > 毕业论文 > 电子信息类 > 通信工程 > 正文

基于Java的飞机游戏网络版开发毕业论文

 2022-05-02 10:05  

论文总字数:22206字

摘 要

本游戏是基于J2SE (Java 2 Standard Edition)开发的射击类游戏,J2SE是Java2的标准版,主要用于桌面应用软件的编程,它定位于消费性电子产品的应用,有着相当高优化的程序运行环境和跨平台特点。

游戏是是现在人们日常生活息息相关的东西,在闲暇之余适当的游戏能起到鱼跃身心,纾解压力,开发智力的作用。本次毕设,基于学习掌握Java在游戏开发方面的知识,我做了一个使用J2SE架构开发的网络版飞机游戏。本游戏支持双人联机游戏,采用Java面向对象的编程思想,把游戏中所需的所有事物抽象成对于的对象,赋予其应有的属性,方法。

本游戏使用多线程编程,每个客户端都需新建一个线程来反复地绘制每一帧图像,此外,还需新建一个UDP线程用于接收服务器端广发的游戏消息,如果是主机,因为要提供服务器功能,还要再建一个线程用于提供服务器端功能。游戏中还实现了事件监听功能,时刻监听玩家的鼠标、键盘的按键事件,然后做出响应。此外,在本系统中还需要应用双缓冲技术来避免动画闪烁的现象。

在通信方面使用了Java的Socket编程技术,本游戏中,使用TCP实现玩家客户端与服务器之间的连接,游戏开始后,使用UDP来发送、接收消息,实现玩家间的通信、同步功能。因为程序中实现了对象属性、方法的封装,不同的消息都继承了自定义的Message抽象类且实现了抽象方法,因此,程序在发送消息时,只需调用NetClient对象的send方法,然后实例化对应的消息类作为参数传入即可。

关键词:面向对象 飞机游戏 J2SE Socket

Java-based Network Aircraft Games Development

Abstract

This game is based on J2SE (Java 2 Standard Edition) developed shooter,J2SE is the Java2 Standard Edition, mainly for desktop application software programming, which is targeted at applications in consumer electronics,has highly optimized The Java runtime environment and platform independence.

The game is now in people's daily lives,something appropriate spare can play the game in the diving body and mind, relieve stress, develop the role of intelligence. Study and master the Java-based knowledge in game development,I do an architecture developed using J2SE online edition aircraft games.The game supports double-line games,use Java object-oriented programming ideas, all the things needed for the game into the abstract object, given its rightful properties and methods.

The game uses the multi-threaded programming,each client needs a new thread to repeatedly draw each frame, in addition, need to create a new UDP thread for the game receiving messgae from server, if is the host, because of providing servering service, but also to build a thread used to provide server-side functionality. The game also implements the event monitoring function, always monitor the players mouse, keyboard, key events, and then respond. In this system also needing used the double-buffering technology to solve the animation flicker problem.

The Java programming technology used in communications is Socket, in this game, using the TCP to achieve the connection between clients and server, after the start of the game, use UDP to send and receive messages for communication, synchronization between players. Because the program is implemented in object properties, package, different methods of news have inherited custom Message abstract class and implements the abstract method, therefore, the program sends a message, simply call the send method NetClient object and then instantiate the corresponding message class as an argument can be.

Key Words: Object-oriented; Aircraft games; J2SE; Socket

目 录

摘 要 I

Abstract II

目 录 III

第一章 绪论 1

1.1 现状 1

1.2 Java游戏开发技术简介 1

1.3 本课题研究的意义 2

第二章 开发环境及相关技术介绍 3

2.1 开发环境 3

2.2 Java语言特点 3

2.2.1 平台无关性 3

2.2.2 面向对象 3

2.2.3 安全性 3

2.2.4 动态的 3

2.2.5 健壮性 3

2.3 J2SE框架以及MyEclipse开发工具 4

2.4 Java图形界面编程 4

2.5 Java多线程技术 4

2.6 游戏通信机制 6

第三章 系统设计 8

3.1 需求分析 8

3.1.1 游戏操作流程 8

3.1.2 游戏模块的功能 9

3.1.3 网络模块的功能 9

3.1.4 需要解决的问题 9

3.2 结构设计 10

第四章 系统实现 12

4.1 代码结构及功能 12

4.2 服务器端的实现 13

4.3 客户端的实现 15

4.3.1 游戏动画的制作 15

4.3.2 Client类和NetClient类功能介绍 16

4.3.3 消息类的实现 20

4.3.4 实体类的实现 21

4.3.5 BulletFactory类的实现 24

4.3.6 双缓冲技术的使用 26

第五章 总结 27

5.1 系统的不足之处 27

5.2 小结 27

参考文献 28

致谢 29

第一章 绪论

1.1 现状

游戏作为一种娱乐方式,在古代是斗鸡、投壶,到如今借助于电脑、网络、音乐、美工等的技术,游戏给人们展现了一个全新的境界,它是人们生活中不可或缺的一部分,随着人们生活节奏的加快,游戏在娱乐的基础上,又给人一放松身心,缓解压力的作用。随着游戏的普及,被人们,尤其是年轻人所喜爱,甚至游戏还成为了现代人们的一种竞技项目,游戏扮演着越来越重要的角色。

虽说现在流行的大、中型的游戏大多是使用C/C 语言来开发的,但Java作为一种新生的语言,凭借着它跨平台,有着较好的移植性等特点,使其在游戏的制作方面具有一定的优势。当下,Java语言设计的游戏的优势领域主要在手机游戏,还有基于Applet设计的网页游戏。

请支付后下载全文,论文总字数:22206字

您需要先支付 80元 才能查看全部内容!立即支付

企业微信

Copyright © 2010-2022 毕业论文网 站点地图