开销:方法调用与对象创建

时间:2013-02-08 11:57:21

标签: java

据我了解JVM,调用方法(即分配新的堆栈帧等)通常比创建新对象更便宜。

但是,我们能否估计两者之间的开销差异有多大,假设方法和对象都声明相同数量的相同类型的本地/实例变量,并将它们实例化为相同的值?

2 个答案:

答案 0 :(得分:1)

在现代JVM中,对象创建是非常快速的操作。例如,请参阅此article。它说:“Sun估计大约十台机器指令的分配成本”。

答案 1 :(得分:0)

即使在那种情况下,方法()需要被绑定到一个类??

并在JVM堆中注册类本身包括member(method())meme allocation。

所以,无论如何,对象创建有点偏高。