@TechReport{Mohnen:AIB-02-09, author = "M. Mohnen", title = "{Interfaces with Default Implementations in Java}", number = "AIB-2002-09", year = "2002", institution = "{RWTH Aachen}", abstract = "{With the interface construct, Java features a concept with high potential for producing reusable code: Java's interfaces allow the definition of class properties independently of class inheritance. We propose an extension of Java for providing default implementations in interfaces. Default implementations are useful since they reduce the effort required to implement an interface. They are especially interesting if there is a canonical way to implement methods of the interface in terms of some other methods. In these cases, an implementation can be obtained by implementing the base methods and use the default implementations of the other methods. We discuss the rationale for our design and show that the extension can be implemented both efficiently and conservatively, i.e. without modification of the Java virtual machine. }", month = apr, url = "http://aib.informatik.rwth-aachen.de/2002/2002-09.ps.gz", }