私はこれを解きほぐすことはできません。
public class MySingleton<T extends AUsefulClass>{
Map<String, T> myUsefulRegistry;
private static MySingleton<T> _instance = null;
public static instance(){
if(instance == null)
_instance = new MySingleton<T>();
return _instance;
}
}
public class Test{
@Test
public void testThis(){
MySingleton<SomeClass> mySingleton = MySingleton<SomeClass>().instance();
}
}
非静的Tへの静的参照を作成できないため、このパラメーター化には誤りがあります。それでも、パラメーター化可能なシングルトンクラスを構築したいと思います。