I want to restrict the type passed to the method as a parameter below:
public <T super Number> void fill(T list) {} But IDEA stresses me that you can't do that.
Although when I do the same restriction from above like this:
public <T extends Number> void fill(T list) {} Then everything works fine.
What is the difference? Why can I put a restriction on top, but I can’t set the same from the bottom? How can I achieve the desired effect using exactly <T ... > , and not <? ... > <? ... > ?