public Object invoke() throws Exception {
        Method m = null;
        Method[] tabm = classe.getMethods();
        for (int i = 0; i < tabm.length; i++) {
            if (!tabm[i].getName().equals(method))
                continue;
            Class[] paramTypes = tabm[i].getParameterTypes();
            int paramLength = (param == null)?0:param.length;
            if (paramTypes.length != paramLength)
                continue;

            // Même nom et même nombre de paramètres => méthode trouvée!!
            // On ne va pas jusqu'à tester le type des paramètres pour l'instant.
            // pour les varArgs, passer un tableau vide a l'appel
            m = tabm[i];
            break;
        }
        if (m == null)
            throw new NoSuchMethodException();
        return m.invoke(object, param); //si object == null, method statique
    }