import java.lang.invoke.MethodHandle;
import java.lang.invoke.MethodHandles;
import java.lang.invoke.MethodType;

class Test {
    public Test(int value) {
        System.out.printf("value = %d\n", value);
    }

    public static void main(String[] args) throws Throwable {
        new Test(1);

        MethodHandle constructor = MethodHandles.lookup()
                .findConstructor(Test.class, MethodType.methodType(void.class, int.class));
        constructor.invoke(2);
    }
}
