private Field field0(String name) throws ReflectException {
        Class<?> type = type();

        try {
            // try get it form public
            return type.getField(name);
        } catch (NoSuchFieldException e) {
            // get declared field
            do {
                try {
                    return accessible(type.getDeclaredField(name));
                } catch (NoSuchFieldException ignore) {
                    // error
                }
                // change to super class
                type = type.getSuperclass();
            }
            while (type != null);
            // if not get it we throw exception
            throw new ReflectException(e);
        }
    }
Get the target field value, and warp to {@link Reflector}

@param name target name
@return Reflector
@throws ReflectException
caprice/kit-reflect/src/main/java/net/qiujuer/genius/kit/reflect/Reflector.java