!7 set flag AllPublic. lib 1400554 // javassist import javassist.bytecode.*; p { ClassFile cf = new ClassFile(false, "User123", null); cf.setInterfaces(new S[] { className(IF1) }); // add default constructor cf.addMethod(new MethodInfo(cf.getConstPool(), "", Descriptor.ofConstructor(new CtClass[0]))); byte[] bytes = bytesFromDataOutputStream(stream -> cf.write(stream)); var cl = new InMemoryClassLoader(myClassLoader()); Class c = cast cl.defineAClass("User123", bytes); print(c); IF1 f = newInstance(c); print(f); }