code: public static Constructor getConstructor(final String name) throws ClassNotFoundException, NoSuchMethodException {
          Constructor constructor = constructorsCache.get(name);
          if (constructor == null) {
              synchronized (constructorsCache) {
                  constructor = constructorsCache.get(name);
                  if (constructor == null) {
                      ClassLoader tccl = Thread.currentThread().getContextClassLoader();
  
                      if (tccl == null) {
                          constructor = Class.forName(name).getDeclaredConstructor();
                      } else {
                          constructor = Class.forName(name, true, tccl).getDeclaredConstructor();
                      }
                      constructorsCache.put(name, constructor);
                  }
              }
          }
          return constructor;
      }
docs: Get the constructor of the class.
  
  @param name the name of the class
  @return the constructor
  @throws ClassNotFoundException class not found
  @throws NoSuchMethodException method not found