java.util.Properties オブジェクトに対する次のメソッドの呼び出しを報告します。
put()putIfAbsent()putAll()get()
歴史的な理由から、java.util.Properties は java.util.Hashtable から継承しますが、String 型以外のプロパティ値の汚染を防ぐ目的でこれらのメソッドを使用することはお勧めしません。
マップ内のキーパラメーターと値パラメーターの両方が String 型の場合、java.util.Properties.putAll() への呼び出しは報告されません。
このような呼び出しは安全であるため、より良い代替コードは存在しません。
例:
Object f(Properties props) {
props.put("hello", "world");
props.putIfAbsent("hello", "world");
props.putAll(new HashMap<>());
return props.get("Hello");
}
クイックフィックス適用後:
Object f(Properties props) {
props.setProperty("hello", "world");
props.putIfAbsent("hello", "world");
props.putAll(new HashMap<>());
return props.getProperty("hello");
}