code: public static <T> T newInstance(Class<?> aClass, Object... initargs) 
  	throws SetupException
  	{
  		Class<?>[] parameterTypes = null;
  		
  		if(initargs != null && initargs.length > 0)
  		{
  			parameterTypes = new Class<?>[initargs.length];
  			
  			for (int i = 0; i < initargs.length; i++)
  			{
  				if(initargs[i] == null)
  					continue; //skip
  				
  				parameterTypes[i] = initargs[i].getClass();
  			}
  		}
  		
  		return newInstance(aClass,parameterTypes,initargs);
  	}
docs: Create a new instance of a given object
  @param aClass the class the create
  @param initargs the initial constructor arguments
  @param <T> the type class
  @return the create instance
  @throws SetupException when an initialize issue occurs