http://www.cs.pitt.edu/~pdillon/one/

其中的SWindowCentrality初始化不完整

缺少红色部分

public SWindowCentrality(Settings s)
    {
        if(s.contains(CENTRALITY_WINDOW_SETTING))
            CENTRALITY_TIME_WINDOW = s.getInt(CENTRALITY_WINDOW_SETTING);
        if(s.contains(COMPUTATION_INTERVAL_SETTING))
            COMPUTE_INTERVAL = s.getInt(COMPUTATION_INTERVAL_SETTING);
        this.lastGlobalComputationTime = this.lastLocalComputationTime =
            -COMPUTE_INTERVAL;

    }

 

怪不得,结果奇奇怪怪的。

 

但是,

http://blog.csdn.net/lhooouuu/article/details/6047767

其实问题就在这里,在JAVA中:
Local variables must be initialized before they can be used.
而在类定义中的属性若不赋予初值,则JAVA会自动赋予这个属性一个默认值,以下为类的属性的默认值表:
数据类型                                    默认值
boolean                                    false
char                                           '/u0000'
整形(byte,short,int,long)        0
浮点型(float, double)           +0.0f或+0.0d
参考型                                        null
总结为一句话便是类里定义的数据成员称为属性,属性可不赋初值,若不赋初值则JAVA会按上表为其添加默认值;方法里定义的数据成员称为变量,变量在参与运算之前必须赋初值。

相关文章:

  • 2022-12-23
  • 2021-05-25
  • 2021-10-18
  • 2021-05-25
  • 2021-04-14
  • 2021-05-27
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-11-26
  • 2021-12-28
  • 2021-08-10
相关资源
相似解决方案