getSuperclass() is a method on Class, and just gives you the immediate parent class of the class you call it on. You can then call it again on the returned superclass, and keep going until you reach java.lang.Object, the root class of every class in
Java. However, you'll never get to List, because it's an interface. You can call list.getClass().getInterfaces() though, and List will be in the array of interfaces returned.