public static Method findMethod(Class<?> clazz, String name, Object... args) {
		if (args != null && args.length > 0) {
			int size = args.length;
			Class<?>[] argsClazz = new Class<?>[size];
			for (int i = 0; i < size; i++) {
				argsClazz[i] = args[i].getClass();
			}
			try {
				return clazz.getMethod(name, argsClazz);
			} catch (NoSuchMethodException e) {
				return null;
			}
		} else {
			try {
				return clazz.getMethod(name, new Class<?>[0]);
			} catch (NoSuchMethodException e) {
				return null;
			}
		}
	}