java游戏资源网,游戏循环中频繁new对象怎么处理

jibage
本文目录

java游戏资源网,游戏循环中频繁new对象怎么处理?

首先谢谢你的邀请。

java游戏资源网,游戏循环中频繁new对象怎么处理

针对这个问题首先需要分析,代码逻辑上是否一定要在循环中创建对象。

1、如果不是必须的就需要优化代码逻辑。因为java中每次new创建一个对象就需要分配内存,对于Java对象来讲,如果说这个对象一直被其他对象所引用,则该对象不会被垃圾回收器回收。而循环中不断创建对象,导致程序占用内存越来越多,最后可能导致频繁Minor GC或者Full GC,甚至内存溢出,这是应该尽量避免的。

2、如果循环中创建对象无法避免,则需要分析每次需要的对象类型。

(1)、如果每次需要的对象可以是不变的,则可以使用单例,这样就只需要创建一次,多次调用即可。

(2)、如果每次需要的对象要不一样的,则需要分析每次创建的对象是只需要在循环里面使用,还是把对象放入集合中在循环体外面使用。

a、如果每次创建的对象只在循环里面使用,则可以把引用的声明放在循环外面,循环里面每次创建不同的对象。这样就是分别把多个对象地址赋值给同一个引用,当把一个新对象地址赋值给引用时,前一个对象已经是无引用状态,可以更快的被垃圾回收器回收,有可能循环还未结束,前面创建的对象已经被回收了,这样可以更快的释放内存。

b、如果每次创建的对象有在循环外面使用,则引用的声明和对象的创建都需要放在循环里面。这种情况是最不理想的,因为创建的对象太多,且都有引用指向对象,这样垃圾回收器就不能回收对象,占用内存较多。

那有没有一款像java游戏神之日落一样的安卓游戏?

可以,java游戏大多都有其他端口的版本,就算没有也可以找到java的模拟器,只要有游戏资源都能玩

怎么才能下载游戏?

只要您的手机支持JAVA就能下游戏了

但下游戏的时候您要找到适合您手机机型的游戏下载这样才能玩的好些,如果您下的不是这个手机型号的游戏就有可能出现玩不了,或者屏幕不对,或者按键不对,

顺便告诉您如何下载游戏:

如果有蓝牙,通过PC直接传到手机上就能安装了(您如果没蓝牙识别器,您应该先买个,如果您的PC系统是XP的话就不用驱动蓝牙,直接插到USB接口就能用了,按上蓝牙后,电脑右下脚会有个蓝牙标志,这时找到您要安装的游戏,一般是JAR文件,右键点击出现-发送到-Bluetooth设备,就行了。如果第一次使用蓝牙要先和手机识别下)

有红外,通过红外识别器传到手机上就行了(方法同上)

如果没蓝牙也没红外,您可以通过手机上网下载,用手机上移动梦网,然后找您要的手机游戏下载就行了

如果您用的是数据线下载游戏,你要传的是JAD格式的文件,传上去之后手机会自动安装的

谁能给我一个JAVA程序PC模拟器?

比较常用的java模拟器有2款KEmulator:java模拟器电脑版 对各版本的JAVA游戏的兼容也做的很好,对于3D画面类型的游戏支持也非常好。而且画面分辨率、键盘按键定义等等全部都可以自行设置。且支持联网,可以流畅的玩网游。

sjboy:手机顽童 手机顽童模拟器已经能较好的模拟市场上90%的手机游戏。还可自选手机机型进行模拟控制。游戏体验不错

java基础教学目录?

第一部分 入 门

第1章 开始Java之旅 2

1.1 Java ME市场简介 2

1.1.1 从设备制造商角度来看 2

1.1.2 从运营商角度来看 3

1.1.3 从消费者角度来看 3

1.2 Java ME平台 4

1.2.1 对Java移动版本的需求 4

1.2.2 移动设备上的Java 5

1.3 配置 7

1.3.1 CLDC简介 7

1.3.2 CDC简介 8

1.4 配置文件 9

1.4.1 MIDP简介 9

1.4.2 基础配置文件简介 9

1.4.3 个人基本配置文件简介 10

1.4.4 个人配置文件简介 10

1.5 包 11

1.6 规划Java ME开发方法 11

1.6.1 选择适当的设备目标 11

1.6.2 销售应用程序 12

1.7 小结 13

第2章 精简Java 14

2.1 精简Java:CLDC 14

2.1.1 理解当前版本:CLDC 1.1 15

2.1.2 回顾CLDC 1.0 16

2.1.3 展望CLDC的未来 16

2.2 精简Java:CDC 16

2.3 更改Java类库以适合CLDC 17

2.3.1 对java.lang包的更改 18

2.3.2 对java.util包的更改 20

2.3.3 对java.io包的更改 21

2.3.4 在CLDC中引入类 21

2.4 更改Java类库以适合CDC 22

2.5 小结 22

第3章 NetBeans IDE入门 24

3.1 选择NetBeans IDE 24

3.2 开始使用NetBeans IDE 25

3.3 创建第一个CLDC/MIDP应用程序 26

3.3.1 创建WeatherWidget 27

3.3.2 构建CLDC/MIDP应用程序 39

3.3.3 打包和执行CLDC/MIDP

应用程序 40

3.4 创建第一个CDC应用程序 42

3.4.1 创建WeatherApplet 43

3.4.2 打包和执行CDC应用程序 58

3.5 小结 60

第二部分 用MIDP进行CLDC开发

第4章 MIDlet介绍 63

4.1 最简单的MIDlet 63

4.2 理解MIDlet的生命周期 64

4.3 将MIDlet打包 66

4.4 获得属性和资源 67

4.5 管理启动事件和报警 67

4.6 小结 73

第5章 构建用户界面 74

5.1 理解Display和可视项对象之间

的关系 74

5.2 使用命令控制应用程序流程 77

5.3 基本可视项简介 80

5.3.1 项简介 81

5.3.2 管理选择项 84

5.4 Screen类及其子类简介 85

5.4.1 使用Form类搜集可视项 86

5.4.2 警告用户 87

5.4.3 接受大量文本 88

5.4.4 显示选项列表 89

5.5 使用Canvas和定制Item 90

5.5.1 用定制Canvas控制绘图行为 91

5.5.2 创建供屏幕使用的定制Item 92

5.5.3 实现定制项 94

5.6 小结 98

第6章 使用记录存储存储数据 99

6.1 记录存储的技术细节 99

6.2 使用记录存储 101

6.2.1 打开和关闭记录存储 101

6.2.2 移除记录存储 102

6.2.3 获得有关记录存储的信息 102

6.3 访问记录存储中的记录 103

6.3.1 添加记录 105

6.3.2 获取记录 105

6.3.3 枚举记录 106

6.3.4 更新记录 107

6.3.5 移除记录 107

6.3.6 计算记录个数 107

6.3.7 监听记录存储的变化 108

6.3.8 理解平台对记录存储的限制 108

6.4 记录存储应用实例 108

6.5 小结 121

第7章 访问文件和其他数据 122

7.1 FCOP简介 122

7.2 使用FCOP 124

7.2.1 判断FCOP是否存在 124

7.2.2 获得FileConnection实例 124

7.2.3 新建文件或目录 125

7.2.4 打开文件 125

7.2.5 修改文件属性 126

7.2.6 删除文件或目录 126

7.2.7 枚举目录的内容 126

7.2.8 监听文件系统变化 127

7.3 FCOP实践 128

7.4 PIM包简介 132

7.5 使用PIM包 133

7.5.1 确保PIM包可用 133

7.5.2 打开PIM数据库 134

7.5.3 从PIM数据库读取记录 134

7.5.4 从PIM记录中读取字段 134

7.5.5 修改PIM记录 138

7.5.6 添加PIM记录 139

7.5.7 移除PIM项目 139

7.5.8 管理PIM数据库分类 139

7.6 PIM包实践 140

7.7 理解代码签名和验证的作用 145

7.8 小结 145

第8章 使用Java移动游戏API 146

8.1 了解移动游戏API 146

8.2 管理事件和绘图 147

8.2.1 轮询击键 148

8.2.2 管理游戏的执行 149

8.2.3 将GameCanvas绑定到MIDlet 150

8.3 可视元素分层 151

8.3.1 管理层 152

8.3.2 使用贴图优化可视的层 153

8.3.3 制作动画 155

8.4 移动游戏API实践 156

8.4.1 实现游戏MIDlet 157

8.4.2 实现游戏Canvas 159

8.5 小结 165

第三部分 CDC开发

第9章 Xlet和个人基本配置文件简介 169

9.1 了解Xlet 169

9.1.1 查看Xlet生命周期 169

9.1.2 扩展Xlet接口 170

9.1.3 使用Xlet上下文 171

9.2 编写简单的Xlet 172

9.2.1 查看简单的Xlet 172

9.2.2 了解Xlet依赖性 174

9.3 使用PBP开发轻量级用户界面 177

9.3.1 为窗口工具包实现自己的组件 177

9.3.2 编写简单的轻量级组件 178

9.3.3 了解PBP的窗口工具包限制 182

9.4 获取Xlet属性和资源 182

9.5 与其他Xlet通信 183

9.5.1 实现共享对象 184

9.5.2 共享对象让其他Xlet查找 186

9.5.3 使用共享对象 188

9.6 小结 190

第10章 Applet和高级图形用户界面 191

10.1 为Java ME编写applet 191

10.1.1 applet生命周期 191

10.1.2 展示applet用户界面 193

10.1.3 访问applet上下文 194

10.1.4 在applet之间通信 194

10.2 使用AWT开发用户界面 196

10.2.1 使用AWT容器 197

10.2.2 使用AWT组件 198

10.2.3 处理AWT事件 199

10.3 使用AGUI开发用户界面 200

10.3.1 了解顶层窗口限制 202

10.3.2 使用AGUI的附加输入支持 202

10.3.3 了解对绘制算法的更改 203

10.4 小结 203

第11章 使用远程方法调用 205

11.1 Java RMI 205

11.1.1 Java RMI架构 205

11.1.2 Java RMI接口 208

11.2 Java RMI OP 208

11.2.1 查看Java RMI OP的要求 208

11.2.2 查看Java RMI OP提供的内容 209

11.3 应用Java RMI 210

11.3.1 为服务编写Java接口 211

11.3.2 使用Java SE实现服务 211

11.3.3 为Java SE生成存根类 213

11.3.4 编写远程服务主机应用程序 213

11.3.5 从客户机调用远程对象 214

11.4 小结 214

第四部分 外 部 通 信

第12章 访问网络上的远程数据 219

12.1 GCF简介 219

12.2 使用套接字和数据报通信 224

12.2.1 在GCF中使用套接字 224

12.2.2 在GCF中使用数据报 227

12.3 使用HTTP进行通信 228

12.3.1 HTTP回顾 229

12.3.2 在GCF中使用HTTP 231

12.3.3 使用HTTP 235

12.3.4 利用HTTPS确保HTTP事务的安全 244

12.4 为网络连接授权 245

12.5 小结 246

第13章 访问Web服务 248

13.1 从客户机的视角查看Web服务 248

13.1.1 了解架构 249

13.1.2 通过网络交换数据 250

13.1.3 使用XML表示数据 252

13.2 Java ME对Web服务中XML的支持 256

13.2.1 在Java ME应用程序中

生成XML 256

13.2.2 J2ME Web服务规范 268

13.2.3 kXML解析器 276

13.3 小结 282

第14章 使用无线消息传送API传递

消息 284

14.1 无线消息传送服务 284

14.1.1 短消息服务 284

14.1.2 多媒体消息服务 285

14.1.3 小区广播服务 285

14.2 无线消息传送API 286

14.2.1 创建消息 288

14.2.2 发送消息 289

14.2.3 接收消息 293

14.2.4 管理消息报头 293

14.2.5 使用WMA所需的权限 294

14.3 使用推注册 294

14.3.1 动态注册传入消息 296

14.3.2 使用PushRegistry API 297

14.4 应用无线消息传送API 297

14.4.1 发送和接收SMS消息 297

14.4.2 发送和接收MMS消息 303

14.5 小结 311

第五部分 其他Java ME接口

第15章 保护Java ME应用程序 315

15.1 理解安全需求 315

15.2 Java ME的安全与信任服务 317

15.2.1 使用APDU API与加密硬件

通信 317

15.2.2 使用JCRMI与Java智能卡通信 320

15.2.3 利用SATSA高级API进行加

解密 321

15.3 利用Bouncy Castle解决方案应对

安全挑战 324

15.3.1 使用Bouncy Castle API创建

消息摘要 326

15.3.2 使用Bouncy Castle API加密和

解密 326

15.4 使用无接触通信创建安全的商务

应用 328

15.4.1 发现无接触目标 329

15.4.2 与无接触目标通信 331

15.4.3 识别和生成可视标签 334

15.5 小结 338

第16章 呈现多媒体内容 340

16.1 MMAPI简介 340

16.1.1 理解基本多媒体概念 341

16.1.2 理解MMAPI的组织结构 342

16.1.3 开始呈现过程 345

16.1.4 控制呈现过程 348

16.1.5 捕获媒体 351

16.1.6 播放单独的乐音 355

16.2 Java可缩放2D矢量图形API简介 358

16.2.1 了解基本的SVG概念 358

16.2.2 了解SVGAPI的组织结构 359

16.2.3 呈现SVG图像 361

16.2.4 修改SVG图像 366

16.2.5 结合使用NetBeans和SVG

图像 369

16.3 应用MMAPI和SVGAPI 369

16.3.1 播放音频和视频 377

16.3.2 捕获图像 378

16.3.3 播放SVG内容 379

16.4 小结 380

第17章 定位 382

17.1 了解基于位置的服务 382

17.2 Location API简介 383

17.2.1 了解Location API 384

17.2.2 使用Location API确定设备

位置 385

17.2.3 使用Location API管理路标 387

17.2.4 理解安全性在LBS中扮演的

角色 388

17.3 使用Location API 389

17.3.1 定位用户 397

17.3.2 在Sun Java Wireless Toolkit中

仿真Location API数据 397

17.4 小结 399

第18章 寻找通用平台 400

18.1 理解JSR在碎片问题中扮演的角色 400

18.1.1 JSR对碎片和统一问题的贡献 400

18.1.2 查阅JSR 401

18.1.3 独立处理碎片问题 403

18.2 了解JTWI 403

18.2.1 了解JTWI必需的元素 404

18.2.2 了解JTWI的可选元素 404

18.3 了解MSA 405

18.3.1 了解MSA 1.0 405

18.3.2 未来演化:MSA2 407

18.4 小结 409

附录 查找Java API 410

发表评论

快捷回复: 表情:
AddoilApplauseBadlaughBombCoffeeFabulousFacepalmFecesFrownHeyhaInsidiousKeepFightingNoProbPigHeadShockedSinistersmileSlapSocialSweatTolaughWatermelonWittyWowYeahYellowdog
评论列表 (暂无评论,131人围观)

还没有评论,来说两句吧...