@Test
public void testNewInstance() {

    String foo = ReflectionUtil.newInstance(String.class);
    assertNotNull(foo);
    Foo1 foo1 = ReflectionUtil.newInstance(Foo1.class);
    assertNotNull(foo1);
    Foo2 foo2 = ReflectionUtil.newInstance(Foo2.class);
    assertNotNull(foo2);
    Foo3 foo3 = ReflectionUtil.newInstance(Foo3.class);
    assertNotNull(foo3);
    class FooConverter implements Converter<FooConverter, ConverterInvocation> {
        @Override
        public FooConverter convert(ConverterInvocation input) {
            return this;
        }
    }
    FooConverter foo4 = ReflectionUtil.newInstance(FooConverter.class);
    assertNotNull(foo4);
}