如何将Java方法标记为“必须使用结果”以进行静态分析?

当使用GCC编译C或C时,您可以使用属性((warn_unused_result))标记函数,如果您调用返回某个东西的函数然后不将其分配给任何东西,这将导致编译器抱怨.

我在开发的Java库中有一些方法有这样的方法调用它们然后丢弃结果总是一个bug.我希望API用户能够通过静态分析识别此类错误,例如使用FindBugs或IntelliJ检查.

我想知道是否有一个方法注释通常用于将方法函数标记为“必须使用结果”. FindBugs为标准库提供了一些特殊的bug查找程序,但一般方法会很有用.

解决方法

完全有一个标准的注释,它是@CheckReturnValue. FindBugs拥有它;见例如 here.

番石榴在内部使用它 – 例如in the configuration methods for Splitter – 从JSR 305.

相关文章

最近看了一下学习资料,感觉进制转换其实还是挺有意思的,尤...
/*HashSet 基本操作 * --set:元素是无序的,存入和取出顺序不...
/*list 基本操作 * * List a=new List(); * 增 * a.add(inde...
/* * 内部类 * */ 1 class OutClass{ 2 //定义外部类的成员变...
集合的操作Iterator、Collection、Set和HashSet关系Iterator...
接口中常量的修饰关键字:public,static,final(常量)函数...