java游戏开发入门教程_JAVA制作游戏入门教程
现在流行的游戏似乎都是用C或C++来开发的。在java平台上几乎没有很大型及可玩的流行游戏。由于java是个新生语言,他的许多特性还有待大家的发掘,但是我们不能否认Java在游戏编程方面的强大性。本文将带领大家一步一步学习编写Java游戏。最终打造属于自己的Java游戏。
在开始之前我们得确认你已经安装了Java JDK,并已经安装了浏览器软件如IE。本章是以Internet为开发对象,一步一步教大家认识Java的Thread、Applets….以及游戏编程要注意的一些方方面面并在每一小部分附上了相应的源代码以供大家参考,最后我们还会对我们的游戏程序进行指导性的提示。在文章中我们还穿插了很多建设性的问题,让读者参与到我们的开发中来。但是由于本章指在带领大家进入这个门槛,大部分知识并不会很详细说明,有兴趣的读者可查阅相关的资料补充。在开始之前我们还得确认你已经知道类,继承和java语言的一些基本属性了。
基本applet
Applets是一种Web浏览器上的小程序,由于applet对系统而言绝对安全,所以它做的事比aaplication有限,但是对于客户端的程序,applets仍然是个很强大的工具。为了浏览和运行方便,我们就以applet为开发对象。
开发Applets程序,我们得继承Applet类,并覆写必要的函数,下面几个函数控制了Web页面上的applet生成与执行。
函数 作用 Init() 这个函数会被自动调用,执行applet的初始化动作—包括组件在版面上的分配,你一定得覆写它 Start() 每当浏览器显示applet内容时,都会调用它,让applet开启其正规工作(尤其是那些被stop()关闭的工作),调用init()之后也会调用这个函数 Stop() 每当浏览器不显示内容时,都会调用它。让applet关闭某些耗资源的工作,调用destory()之后也会调用这个函数 Destroy() 浏览器将applet自网页移除之际,便会调用它,以执行”applet不再被使用”应该做的最后释放资源等动作 Paint() 让你在Applet界面上进行相应的绘画动作,每次刷新时都会重画
所有的applet文件源文件名和java应用程序一样都是.java为扩展名,编译后的执行文件扩展名为.class,由于在applet中已经没有了main()函数,它是和HTML自动集成,所以我们要执行applet,要在HTML源文件中放入一特定的标签(tag),才能告诉网页如何装载并执行这个applet,这里有一点要注意,我们执行的网页必须能执行java程序。
普通HTML 源码格式
<HTML>
<APPLET CODE="HelloWorld.class" WIDTH=300 HEIGHT=500>
</APPLET>
</HTML
<applet code ="HelloWorld.class" width=300 height=500>这行即applet的执行处。
applet 执行文档为 ="HelloWorld.class" 告诉网页”applet ”扩展文件为HelloWorld.class
width 和 height 告诉浏览器这个显示的applet的大小
有关标签(tag)的说明,大家可在网上找到很多相关的说明文档。
线程
由于apllet,java应用程序的执行都和线程有关。我们来大概了解一下线程的概念。
线程也称为轻型进程 (LWP)。每个线程只能在单个进程的作用域内活动、协作和数据交换,并且在计算资源方面非常廉价。线程需要操作系统的支持,因此不是所有的机器都提供线程。Java 编程语言,作为相当新的一种语言,已将线程支持与语言本身合为一体,这样就对线程提供了强健的支持。
Thread 类是一个具体的类,即不是抽象类,该类封装了线程的行为。要创建一个线程,程序员必须创建一个从 Thread 类导出的新类。程序员必须覆盖 Thread 的 run() 函数来完成有用的工作。用户并不直接调用此函数;而是必须调用 Thread 的 start() 函数,该函数再调用 run()。
但是使用Thread类实现线程,增加了程序的类层次,所以一般程序员都由另一个java线程接口Runnable接口来实现,Runnable接口只有一个函数run(),此函数必须由实现了此接口的类实现。
线程中有几个重要的方法是我们得了解:
Thread.start(): 启动一个线程
Thread.stop(): 停止一个线程
Thread.sleep(time in milliseconds): 暂停线程在一个等待时间内。
java游戏开发入门教程_JAVA制作游戏入门教程相关推荐
- flash游戏教程集锦~~制作游戏有疑惑的先来这里看看~~
http://www.flash8.net/bbs/dispbbs.asp?boardID=38&ID=183016&page=1 flash游戏教程集锦~~制作游戏有疑惑的先来这里看 ...
- Unity 游戏开发技巧集锦之制作一个望远镜与查看器摄像机
Unity 游戏开发技巧集锦之制作一个望远镜与查看器摄像机 Unity中制作一个望远镜 本节制作的望远镜,在鼠标左键按下时,看到的视图会变大:当不再按下的时候,会慢慢缩小成原来的视图.游戏中时常出现 ...
- 【Visual C++】游戏开发笔记四十三 浅墨DirectX教程十一 为三维世界添彩:纹理映射技术(二)...
本系列文章由zhmxy555(毛星云)编写,转载请注明出处. 作者:毛星云(浅墨) 邮箱: happylifemxy@163.com 本篇文章里,我们首先对Direct3D之中固定功能流水线中的 ...
- TI-BASIC 计算器游戏开发之文字、图形、音频教程 II:图形处理
2019独角兽企业重金招聘Python工程师标准>>> TI-BASIC 计算器游戏开发之文字.图形.音频教程 II:图形处理 [第二部分] TI-BASIC 图形处理教程 还没到结 ...
- M8SDK教程-游戏开发心得(三):DDraw进阶教程-贴图,Alpha和Sprite动画,RPG游戏雏形
M8SDK教程-游戏开发心得(三):DDraw进阶教程-贴图,Alpha和Sprite动画,RPG游戏雏形 引用: M8 SDK教程- 游戏开发心得(一): 游戏程序框架 http://bbs.mei ...
- 【Visual C++】游戏开发笔记四十三 浅墨DirectX教程十一 为三维世界添彩 纹理映射技术 二
分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 本系列文 ...
- TI-BASIC 计算器游戏开发之文字、图形、音频教程:前言
2019独角兽企业重金招聘Python工程师标准>>> TI-BASIC 计算器游戏开发之文字.图形.音频教程:前言 [前言] 开发环境:TI-89T的TI-BASIC,主要是因为T ...
- python游戏开发引擎_你的游戏开发第0课
电子游戏是许多人喜爱甚至沉迷的事情.尤其对于程序员来说,开发游戏是不少人最初学习编程的动力.在之前,我发过一些游戏开发的教程和案例: 爆款游戏<贪吃蛇大作战>的 Python 实现 如何用 ...
- 游戏开发心得——书籍篇——《游戏引擎框架》-专业工具
游戏开发心得--书籍篇--<游戏引擎框架>-专业工具 FOR THE SIGMA FOR THE GTINDER FOR THE ROBOMASTER 简介: 学习<游戏引擎框架&g ...
- u3d游戏开发视频潭州_游戏美术行业的发展与应用人工智能学院专业介绍及未来前景系列报告会二...
为了让2020级新同学对动漫专业加深认识,更好的规划学习,学院于11月12日6点晚邀请了校企合作单位"369云遮月游戏公司"在长安校区图书馆阶梯教室进行了游戏美术行业的发展与应用的 ...
最新文章
- linux如何运行用户程序,Linux系统下,如何以其他用户身份运行程序
- 关于jquery调用webservice的一些感想
- keras 的使用例子
- “宇宙第一大行”之 MySQL 数据库架构解密
- 字段类型:mysql中int(3)与int(11)有什么区别吗?优化数据库字段占据磁盘的大小
- LiveData源码解析
- 易语言对象--Word之按行定位并写入文本
- zui php,ZUI前端html5框架 php版 v1.9.1
- WINDOWS更改无线网卡MAC地址的方法
- netcore ajax上传,.netCore WebApi传输参变化
- 华为手机,果然有顶级的产品经理 —— 手机克隆太好用了
- switch模式的切换
- DELL 15R 7520 UEFI引导Clover安装Yosemite 10.10.2实录,基本完美
- Java 按指定概率生成由字母、数字、特殊符号组成的密码
- 计算机网络实验报告(Wireshark 实验)
- 一次zabbix代理队列积压的异常处理
- 快递鸟android_YII2 使用快递鸟api跟踪物流查询(示例代码)
- excel文件导出并上传到服务器上
- Python 生成器(generator)详细总结+示例
- Visio 画甘特图
热门文章
- 支持全文搜索的桌面搜索工具
- 关系型数据库学习手记——初见倾心PostgreSQL、MySQL、SQLite、MongoDB
- 【CSDN最全java项目实战500篇】练手/项目经验/毕设刚需
- Allied Vision相机
- 【IoT】创业:硬件创业之测试产品与产品本身一样重要
- 不服不行!java编程思想第六版下载
- swagger - RESTFUL接口文档在线自动生成、代码自动生成工具详解
- 如何深入学习Android系统
- android studio应用开发案例,Android应用开发案例教程(Android Studio版).pptx
- spring源码学习