Eclipse上的语法错误(公共静态变量)

时间:2015-03-12 04:16:29

标签: java eclipse variables syntax global

我是Java新手,我正在使用eclipse IDE,在尝试创建公共静态int时,我要求语法错误告诉我放;。我在初始化变量时只收到此错误。其他2个变量在主类中使用得很好,是全局变量。我在public static int classaverage部分得到了语法错误。

以下是代码:

public class Calcpromedio {

    public static int classaverage;

    classaverage = valusers / numuser;  

}

我不知道他们在使用全局变量时是否具有特定规则,因此如果您找到解决方案,请告诉我原因以及是否有任何规则。

谢谢

我希望有一天我能回答问题而不回答问题......

2 个答案:

答案 0 :(得分:2)

问题出在以下几行:

classaverage = valusers / numuser; 

此表达式不在所有方法和代码块中。您可以将其重新分配给:

public static int classaverage = valusers / numuser;

或者使用静态块

public static int classaverage;

static {
    classaverage = valusers / numuser;
}

加载类时将计算这两个值 - 静态初始化。这可能不是预期的行为。


但仅仅基于名称,这似乎是一个依赖于更多数据的计算,而不是静态初始化期间可用的数据。我建议在所有数据可用并收集后将该分配移动到方法中。

public void provideData(int[] someData){
    //... Somewhere classaverage's value should be updated
    classaverage =  valusers / numuser;
}

答案 1 :(得分:0)

您的第二行classaverage = valusers / numuser;应位于静态块/方法/构造函数中。