我正在制作游戏,最近我组织了所有代码。 对于绘图,我现在使用来自另一个类的变量,并且我注意到在重组时性能的下降非常重要。
所以我想知道:访问另一个类中的变量比访问同一个类中的变量要慢吗?
注意:我有一个非常大的数字和不同的粒子要绘制,所以要访问很多变量。
答案 0 :(得分:5)
如果没有关于您的计算机环境和特定代码的具体信息,真的很难回答。以下是我的建议:
注意:如果你无法衡量差异,但只是“感觉”,你永远不会真正知道这个问题是真实的还是想象的。
答案 1 :(得分:3)
通常即使通过方法读取不同对象中的字段也没有任何区别。只要您的负载在特定的“热点”上升,Java热点编译器就会立即优化字节码,这样它就不再有所作为。
这就是JVM如此快速发展的原因之一。这也是人们告诉你以下内容的原因之一:
如果您发现性能问题,请务必先检查内存问题。除了增加运行时复杂性的算法中的错误...... 性能问题的最常见原因(首先检查它们):
visualvm
及其插件等工具进行检查。top
等工具来检查。特别是如果您确实拥有大量数据,变量,粒子,请先检查明显的事情: - )
祝你好运!