cglib/src/main/java/net/sf/cglib/proxy/InterfaceMaker.java
public void add(Class clazz) {
        Method[] methods = clazz.getMethods();
        for (int i = 0; i < methods.length; i++) {
            Method m = methods[i];
            if (!m.getDeclaringClass().getName().equals("java.lang.Object")) {
                add(m);
            }
        }
    }
public void add(Class clazz) {
        Method[] methods = clazz.getMethods();
        for (int i = 0; i < methods.length; i++) {
            Method m = methods[i];
            if (!m.getDeclaringClass().getName().equals("java.lang.Object")) {
                add(m);
            }
        }
    }
Add all the public methods in the specified class.
Methods from superclasses are included, except for methods declared in the base
Object class (e.g. <code>getClass</code>, <code>equals</code>, <code>hashCode</code>).
@param class the class containing the methods to add to the interface