Sonar は、「パフォーマンス - 名前付き静的内部クラスにリファクタリングできます クラス DataServiceImpl$2 は、名前付き静的内部クラスにリファクタリングできます」と言います。
paramsClass1.add(new TypeToken<List<EntityFieldMap>>(){}.getType());
そのため、静的クラスを作成しましたが、正常に動作しますが、汎用にすると動作しません。このスニペットを見てください。
import com.google.gson.reflect.TypeToken;
public class TokenTest
{
public static class MyInnerClass1<T> extends TypeToken<T> {};
public static class MyInnerClass2<Integer> extends TypeToken<Integer> {};
public static void main(String[] args)
{
//prints T
System.out.println(new MyInnerClass1<Integer>().getType());
//prints Integer which is desired
System.out.println(new MyInnerClass2().getType());
}
}