有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java定义此变量的范围

我有以下代码:

public Thread createThread(){
     final int innerVar = 100;   //this Life cycle ?
     return new Thread(){
          public void run(){
             System.out.println(innerVar);
          }
     };
}

我想知道innerVar的生命周期是什么

innerVar的局部变量是否仍在堆栈或堆中


共 (1) 个答案

  1. # 1 楼答案

    innerVar是一个常量int,因此编译器可以执行常量传播。没有生命周期,因为使用了value而不是变量