Android studio:为什么我不能引用我声明的变量?

时间:2016-01-30 18:19:33

标签: java android variables int declaration

如果我声明一个int,那么使用Android工作室空活动(或空白活动)然后想要在下一行初始化它它不会让我。例如:

@{
    ViewBag.Title = "Portal";
}
    <title>JQuery Events</title>
    <link href="~/Content/jquery-ui-themes-1.12.0-beta.1/jquery-ui-themes-1.12.0-beta.1/themes/mint-choc/jquery-ui.css" rel="stylesheet" />
    <link href="~/Content/jquery.jqGrid/ui.jqgrid.css" rel="stylesheet" />
    <script src="~/Scripts/jquery-1.10.2.min.js"></script>
    <script src="~/Scripts/i18n/grid.locale-en.js"></script>
    <script src="~/Scripts/jquery.jqGrid.min.js"></script>
    <script src="~/Scripts/jQueryPortal.js"></script>

<h2>Portal</h2>

    <div>
        <table id="grid"></table>
        <div id="pager"></div>
    </div>

在n = 1下设置一个lint;告诉我“未知的课程:'n'”

...如果我创建了一个方法,我可以在方法中初始化它。例如:

public class MainActivity extends AppCompatActivity {

     int n;
     n=1;   // generates a lint here and says unknown class 'n'

}

它还允许我在方法的下一行声明一个int THEN初始化它。例如:

public class MainActivity extends AppCompatActivity {

     int n;

     public void test() {
          n=1;
     }

}

有人可以解释为什么我不能引用我在MainActivity类中设置的变量吗?谢谢。

1 个答案:

答案 0 :(得分:1)

这就是Java变量初始化的工作方式 - 您可以在类的开头初始化变量:

public class MainActivity extends AppCompatActivity {

     int n;

     public void test() {
          n=1;
          int a;
          a = 8;
     }
}

或在方法或构造函数中:

{{1}}

它与android无关,只是简单的Java。

例如,您可能会阅读该机制here