FindBugs:可能的空指针取消引用

时间:2015-07-07 06:37:19

标签: java findbugs

您好我有以下方法:

protected boolean shouldCheckLimit() {
    if (startDate == null || endDate == null) {
        return true;
    }
    final Long currentTime = System.currentTimeMillis();
    if (startDate <= currentTime && currentTime < endDate) {
        return true;
    }
    return false;
}

问题是findBugs发现了以下问题:

Possible null pointer dereference of TimeIntervalLimit.startDate in com.bet.blues.limit.TimeIntervalLimit.shouldCheckLimit() [Scary(8), Normal 

我必须提到startDate和endDate是Long变量。 我尝试在条件中添加null的检查,我也尝试使用longValue()方法,但没有结果。 你知道如何解决这个问题吗?可能是fndBugs方面的错误吗?

1 个答案:

答案 0 :(得分:5)

您收到错误,因为startDate(以及endDate)可能是null。但是你检查了它们null,这样就不可能了,对吧?

答案是两者都是全局的,并且可能在任何时候由另一个线程设置为null