kirancodes.me
To Proof Maintenance & Beyond!

Efficient Implementation of Java Interfaces: Invokeinterface Considered Harmless

Bowen Alpern, Anthony Cocchi, Stephen J. Fink, David Grove, Derek Lieber

Abstract

Single superclass inheritance enables simple and efficient table-driven virtual method dispathc. However, virtual method table dispatch does not handle multiple inheritance and interfaces. This complication has led to a widespread misimpression that interface method dispatch is inherently inefficient. This paper argues that with proper implementation techniques, Java interfaces need not be a source of significant performance degradation.

Related papers