INVOKEINTERFACE
INVOKEINTERFACE is an instruction in the Java Virtual Machine (JVM) bytecode. It is used to invoke an instance method on an object, where the actual method to be executed is determined at runtime based on the object's runtime type, rather than its compile-time type. This is a key mechanism for achieving polymorphism in Java.
When the JVM encounters an INVOKEINTERFACE instruction, it first looks up the method identified by the instruction's
INVOKEINTERFACE is distinct from other invocation instructions like INVOKEVIRTUAL and INVOKESTATIC. INVOKEVIRTUAL is also used for