code: @SuppressWarnings("deprecation")
      public static Class<?> createCompositeInterface(Class<?>[] interfaces, ClassLoader classLoader) {
          Assert.notEmpty(interfaces, "Interfaces must not be empty");
          return Proxy.getProxyClass(classLoader, interfaces);
      }
docs: Create a composite interface Class for the given interfaces,
  implementing the given interfaces in one single Class.
  <p>This implementation builds a JDK proxy class for the given interfaces.
  
  @param interfaces  the interfaces to merge
  @param classLoader the ClassLoader to create the composite Class in
  @return the merged interface as Class
  @see java.lang.reflect.Proxy#getProxyClass