将方法的参数标记为final会使方法调用更快吗?

时间:2011-06-21 22:38:20

标签: java methods final

我见过以这种方式编写的时间敏感的回溯程序,我猜它会让编译器避免一些内存复制并进行更快的方法调用,我想这对递归程序很有用。

但这是我的推测,我想详细解释/文章或反驳。

1 个答案:

答案 0 :(得分:1)

它对性能没有任何影响 - 实际上,它根本没有运行时效果。

如果你编译一个包含2个方法的类 - 一个参数标记为final,另一个没有 - 然后查看为每个方法生成的字节码,你会注意到没有区别(其他比方法名称。)

此上下文中的所有 final 关键字都是为了使您无法在方法中重新分配该变量。