I have an abstract class in which I want to have an abstract method taking in argument a Consumer functional interface and let the child class decide which type should parameterize the consumer.
I tried it that way:
public void show(Consumer<?> validationHandler) {
    this.validationHandler = validationHandler;
    stage.show();
}
But in the child class, it says that it isn't a correct override:
@Override
public void show(Consumer<Protection> validationHandler) {
    super.show(validationHandler);
}
My goal is to be able to call this method on a child instance and having the correct type provided in my consumer lambda that I will pass.
Do you have any idea how to proceed?
 
     
    