Android:Java在许多课程中效果较差

时间:2012-10-15 13:59:59

标签: java android performance class

我正在为Android编写游戏,我担心性能和内存。 Java对许多类来说效果不高吗?

4 个答案:

答案 0 :(得分:5)

  

许多课程影响绩效?

我不这么认为。只有一件事是在启动时将所有类加载到内存(使用较新版本进行优化)会很慢(可忽略不计)。

答案 1 :(得分:0)

它不是你需要担心的课程。更确切地说,它取决于您实例化的对象的数量以及它们被取消引用的频率,因此必须由GC清理。

因此,如果有任何事情需要关注创建和解除引用的对象的数量。

答案 2 :(得分:0)

回到J2ME时代,一些设备的限制为64k jar(例如) - 许多类的使用影响了jar大小,其中一个技巧是减少类的数量。
您将拥有的唯一开销是每个类的类加载。
不确定这是在启动时还是在第一次访问/分配给定类的对象(或以某种方式组合两者)时发生,但这确实不是问题。

答案 3 :(得分:0)

在性能方面,课程数量几乎无关紧要。一般来说,还有许多其他领域通常会对感知表现产生更大的影响(我们在这里讨论的是幅度,而不是百分之几)。

它还取决于您认为许多类的内容。我会考虑> 30K类很多(我在一个有这么多课程的项目中工作过),但是你可能已经考虑了很多1K课程(而且1K什么都没有,真的)。通常,添加另一个10K类(也是使用,注意未加载的类不会显着影响性能)的唯一显着效果是增加几秒的启动时间。

首先关注正确的功能,在达到目标时担心性能。在处理函数时,应该的唯一性能考虑因素是选择合适的数据结构和算法。选择适当的数据结构和有效的algorytms比在类加载区域中削减一小部分百分比具有更大的影响。