title: Interface with inner implementation - good or bad
body: <p>I am working on a project with many someInterface - someInterfaceImpl-pairs. Some days ago I got the idea (probably inspired by reading some objective c code) to include the default implementations as an inner class.
  Now some colleagues (all with much more java experience than me) saw this idea - feedback was between shocked and surprised ("this is working?").</p>
  
  <p>I googled around a bit but didn't find much evidence of usefulness of this "pattern" (personal i like it):
  <a href="http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.25.1606&amp;rep=rep1&amp;type=pdf&amp;ei=YNTMT-CUH8Xk4QSHsdlF&amp;usg=AFQjCNFB0v4Oe99j0NyDJgMQLg2O-e22pQ" rel="nofollow noreferrer">pdf-paper</a>
  and
  <a href="http://www.codestyle.org/java/faq-Interface.shtml#interfacenestclass" rel="nofollow noreferrer">a faq about code style</a></p>
  
  <p>What do you think - especially in those cases where an "default" implementation is tightly coupled to an interface.</p>
  
  <p><strong>Update</strong>
  i just found this: <a href="https://stackoverflow.com/questions/3427073/java-interface-implementation-pair">Java Interface-Implementation Pair</a></p>
  
  <p>(see accepted answer)</p>