【问题标题】:Syntax error on Eclipse (public static variables)Eclipse 上的语法错误(公共静态变量)
【发布时间】:2015-03-12 04:16:28
【问题描述】:

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

代码如下:

public class Calcpromedio {

    public static int classaverage;

    classaverage = valusers / numuser;  

}

我不知道在使用全局变量时是否有特定的规则,所以如果你找到解决方案,请告诉我为什么以及是否有任何规则。

谢谢

我希望有一天我可以回答问题而不是得到回答的问题......

【问题讨论】:

  • 嗨@Antonio Gonzalez,我知道你是SO新手。如果您认为某个答案解决了问题,请通过单击该答案对应的绿色复选标记将其标记为“已接受”。这有助于将注意力集中在仍然没有答案的旧 SO。

标签: java eclipse variables syntax global


【解决方案1】:

问题出在这行:

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;
}

【讨论】:

    【解决方案2】:

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

    【讨论】:

      猜你喜欢
      • 2011-09-23
      • 2015-03-19
      • 2015-04-07
      • 1970-01-01
      • 2014-03-15
      • 2011-07-12
      • 2012-02-26
      • 2012-05-14
      相关资源
      最近更新 更多