Suppose I have:
public class Parent<T extends Child1> {
public Parent() {
}
public static <T extends Number> void test(T t) {
}
}
And Child1 is a child class of Parent.
What I'm trying to understand here is the connection between the parameter type T in both class scope and method scope. How can both parameters (class' and method's) be allowed to be named T if their bounds are completely different from one another?