static O nuObjectWithoutArguments(S className) ctex { ret nuObjectWithoutArguments(Class.forName(className)); } static A nuObjectWithoutArguments(Class c) ctex { Constructor m = nuObjectWithoutArguments_findConstructor(c); m.setAccessible(true); return (A) m.newInstance(); } static Constructor nuObjectWithoutArguments_findConstructor(Class c) { for (Constructor m : c.getDeclaredConstructors()) if (empty(m.getParameterTypes())) ret m; fail("No default constructor found in " + c.getName()); }