无法从静态上下文引用非静态变量我写了这个测试代码:class MyProgram{
int count = 0;
public static void main(String[] args)
{
System.out.println(count);
}}但它给出了以下错误:Main.java:6: error: non-static variable count cannot be referenced from a static context System.out.println(count);
^如何让我的方法识别我的类变量?
4 回答
慕标琳琳
TA贡献1830条经验 获得超9个赞
让我们先分析你的程序..在你的程序中,你的第一个方法是main()
,并记住它是静态方法......然后你声明该方法的局部变量(compareCount,low,high等等)。此变量的范围仅是声明的方法,无论它是静态还是非静态方法。所以你不能在那个方法之外使用那些变量。这是你犯的基本错误。
然后我们来到下一点。你告诉静电正在杀了你。(它可能会杀死你,但它只会给你的程序带来生命!!)首先,你必须了解基本的东西。*静态方法只调用静态方法,只使用静态变量。*静态变量或静态方法不依赖于该类的任何实例。(即,如果更改静态变量的任何状态,它将反映在类的所有对象中)*因此,您将其称为类变量或类方法。关于“静态”关键字还有很多。我希望你现在明白了。首先更改变量的范围并将其声明为静态(以便能够在静态方法中使用它)。
对你的建议是:你误解了变量范围和静态功能的想法。清楚地了解这一点。
添加回答
举报
0/150
提交
取消