1
我想,以檢測空指針故障使用FindBugs的在我的申請,我關心的是代碼FindBugs的非空沒有找到所有的情況下
public class Test
{
public static void main(String[] args)
{
String nullStr = null;
Person p = new Person();
String mightBeNull = p.getAddress().getStreet();
getString(mightBeNull);
getString2(nullStr);
}
@NonNull
static String getString(String street) {
return street;
}
@NonNull
static String getString2(String nullString) {
return nullString;
}
}
該代碼一定會用空指針異常的地址結果人員內部結構不會啓動,但帶有@NonNull
註釋的FindBugs只會檢測第二種情況getString2(nullStr)
。如果它不支持這種情況,你可以參考我的其他工具,可以在編譯階段檢測到這種情況嗎?
至於其他工具,如果您使用的是Eclipse,您可能需要查看http://help.eclipse.org/luna/index.jsp?topic=%2Forg.eclipse.jdt.doc。用戶%2Ftasks%2Ftask-using_null_annotations.htm&cp = 1_3_9_0以在您輸入incl時獲得所有需要的警告。一些快速修復等。 – 2015-03-14 18:43:47