public static void isAssignableTo(Class<?> from, Class<?> to, String message, Object... arguments) {
    isAssignableTo(from, to, new ClassCastException(format(message, arguments)));
  }
public static void isAssignableTo ( Class < ? > from , Class < ? > to , String message , Object ... arguments ) { isAssignableTo ( from , to , new ClassCastException ( format ( message , arguments ) ) ) ; }
Asserts that the {@link Class 'from' class type} is assignable to the {@link Class 'to' class type}.

The assertion holds if and only if the {@link Class 'from' class type} is the same as or a subclass
of the {@link Class 'to' class type}.

@param from {@link Class class type} being evaluated for assignment compatibility
with the {@link Class 'to' class type}.
@param to {@link Class class type} used to determine if the {@link Class 'from' class type}
is assignment compatible.
@param message {@link String} containing the message used in the {@link ClassCastException} thrown
if the assertion fails.
@param arguments array of {@link Object arguments} used as placeholder values
when formatting the {@link String message}.
@throws java.lang.ClassCastException if the {@link Class 'from' class type} is not assignment compatible
with the {@link Class 'to' class type}.
@see #isAssignableTo(Class, Class, RuntimeException)
@see java.lang.Class#isAssignableFrom(Class)