JD.VNU.NULL
JD.VNU.NULL は、変数に代入された NULL 値が代入後に 1 度も読み取られていないことを示します。
脆弱性とリスク
多くの場合、冗長な初期化コードという程度ですが、重大な論理エラーを意味する場合もあります。
軽減と防止
コードを最適化し、使用されていない代入を削除してください。
例 1
コピー
Reader prepareReader(Reader r) {
BufferedReader bufferedReader = null;
try {
bufferedReader = new BufferedReader(r);
register(bufferedReader);
} catch (Exception e) {
e.printStackTrace();
}
return bufferedReader;
}
private void register(BufferedReader bufferedReader) {
// ...
}
JD.VNU.NULL が 17 行目に対して報告されています。BufferedReader コンストラクタが例外をスローしないため、20 行目で常に 'bufferedReader' 変数が代入されます。