Since abstract classes do not support Java's dynamic {@code Proxy}, we have to to use our own proxy mechanism.
throw new AssertionError();