On JVM, interfaces implemented by class and corresponding interface methods are a part of class definition. You can't add an interface to an existing class C without recompiling C and use JVM method dispatch.
Moreover, since JVM allows loading bytecode at runtime, you actually can't observe all class definitions (embedded JVMs make special assumptions here).