似乎FindBugs并不知道两个单独的调用会getName()返回相同的值(对此进行分析将非常困难)。似乎您的getName()方法有时实际上返回null,因此FindBugs在内部将此方法的返回类型标记为@CheckForNull。要删除警告,请只调用一次该方法。例如这样:
getName()
@CheckForNull
String res = null; if (method != null) res = method.getName(); if (res == null) res = ""; return res;