フィールド、メソッド、コンストラクター、イニシャライザーのいずれも含んでいないクラスは空だと見なされます。 空のクラスは大規模な変更やリファクタリングを行った後に残っていることがあります。
例:
class Example {
List<String> getList() {
return new ArrayList<>() {
};
}
}
クイックフィックス適用後:
class Example {
List<String> getList() {
return new ArrayList<>();
}
}
インスペクションの構成:
スーパークラスをパラメーター化しているクラスを無視するには、「スーパータイプのパラメーター化であればクラスを無視」オプションを使用します。 例:
class MyList extends ArrayList<String> {}
java.lang.Throwable を拡張しているクラスを無視するには、「java.lang.Throwable のサブクラスを無視」を使用します。