我正在使用Findbugs和javax.annotation.Nonnull来对方法参数进行标注。
对于私有方法,我通常会添加assert语句来检查是否为空值,例如:
private void myMethod(@Nonnull String str) {
assert str != null
....
最新版本的Netbeans(7.3rc2)报告称断言检查不必要(因为有Nonnull注释)。我不确定这是否是Netbeans的错误。
如果我指定了@Nonnull注释,那么可以删除assert行吗?
据我所知,注释仅在静态分析期间使用,而启用时,assert在执行期间处于活动状态,因此两者并不是替代品。
lombok.NonNull
会为你添加代码。 - juanmf