You can enter a member in Parameterswhich will contain Classthe type parameter.
For instance:
abstract class Parameters<T> {
protected Class<T> type;
}
Then in the method getOperationByParametersClass()you must pass the instance Parameters(including subclasses):
public <O extends Operation, P extends Parameters<O>> Class<O>
getOperationByParametersClass(P parametersInstance) {
return parametersInstance.type;
}
source
share