Pessoal assim funciona:
public abstract class BaseService<E extends Persistable, F extends AbstractDAO><E>> {
private AbstractDAO<E> getDAO(){
return ReflectionUtils.newInstance(getDaoClass());
}
protected abstract Class<? extends F> getDaoClass();
}
Mas eu gostaria de fazer algo do tipo:
public abstract class BaseService<E extends Persistable, F extends AbstractDAO><E>> {
private AbstractDAO<E> getDAO(){
F clazz;
return ReflectionUtils.newInstance(clazz.getClass());
//ou
return ReflectionUtils.newInstance(Class<F>);
}
}
Ou seja, da para fazer sem obrigar a enviar a classe com o método “getDaoClass”?