Here, we are working on generics so I reckon upper bound is more relevant term. Notice that our argument can be interface (Writable is actually interface), not necessary superclass and the relationship we check here is isAssignableFrom(), not inheritance. Anyway, it's minor and I'll change that.