JAVA:静态方法在执行过程中对性能有很大影响吗?

标签 java jvm static-methods execution-time

我有两个问题一直在我脑海里盘旋了一段时间,我希望有知识的人可以为我解答:)

  1. 使用静态方法对代码执行期间(时间)的性能有利还是不利?
  2. 内存怎么样?它们是否比对应的实例方法使用更多的内存?

最佳答案

静态方法理论上可以比实例方法更好地执行,因为不需要将 this 指针传递给它们。但是,我强烈建议不要关注这个完全无关紧要的事实,并根据您想要完成的任务来选择静态或实例方法,而不是根据它们每次调用是否会快一个或两个时钟周期。

静态方法可以被认为比实例方法使用更少内存的唯一方法是它们通过不必传递 this 指针而节省了一个微薄的堆栈空间机器字。同样,对于任何实际使用场景来说,这都不值得关注。

那么,对性能有相当大的影响吗?没有机会。

关于JAVA:静态方法在执行过程中对性能有很大影响吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28503817/

相关文章:

java - 为什么 Java 允许捕获应用程序不应该处理的错误类型?

java - 在 java : speed 中处理大量数据

java - Jpcap 破坏 JVM

斯卡拉探查器?

Java 和 Selenium : Static methods in Page Objects

java - 使用私有(private)静态方法

java - 使用 JavaDoc 中的自定义标签记录业务逻辑?

java - 如何从 RequestBody 向自定义注释中注入(inject)数据

java - 堆内存使用中的 PS Old Gen 内存 : GC settings for Java Out Of Memory Exception

java - 如果未访问类,是否保证 static init 不运行?