代码之家  ›  专栏  ›  技术社区  ›  tushar_lokare

每方法操作数堆栈V/S每方法局部变量

  •  1
  • tushar_lokare  · 技术社区  · 8 年前

    JVM stack 我不知道每个方法操作数堆栈和每个方法局部变量之间的区别是什么? 如果JVM是32位机器,堆栈大小为什么是65535个操作数?

    2 回复  |  直到 8 年前
        1
  •  1
  •   Peter Lawrey    8 年前

    64K操作数是局部变量的数目(尽管 long double 取2)这只计算原语和引用。对象不在字节码级别的堆栈上(尽管它们可以在运行时使用转义分析)

        2
  •  2
  •   Louis Wasserman    8 年前

    JVM对存储在变量中的值和表达式的中间结果(例如 (a + b) + c 、a、b和c是局部变量,但它们是 a + b

    堆栈的最大大小与机器字中的位数没有特别的关系。