public static boolean isInstance(Object obj, String interfaceClazzName) {
        for (Class<?> clazz = obj.getClass();
                clazz != null && !clazz.equals(Object.class);
                clazz = clazz.getSuperclass()) {
            Class<?>[] interfaces = clazz.getInterfaces();
            for (Class<?> itf : interfaces) {
                if (itf.getName().equals(interfaceClazzName)) {
                    return true;
                }
            }
        }
        return false;
    }
@Test
    void testIsInstance() {
        assertTrue(ReflectUtils.isInstance(new Foo1(), Foo.class.getName()));
    }