April 6, 2011 · 6 min read
We know earlier, Java does not support [multiple inheritance](http://way2java.com/oops-concepts/types-of-inheritance/), basically. But to support multiple inheritance, partially, Java introduced "**interfaces**". An interface is not altogether a new one for us; just it is a special flavor of [abstract class](http://way2java.com/oops-concepts/abstract-classes/) where all methods are abstract. That is, an **interface contains only [abstract methods](http://way2java.com/oops-concepts/abstract-classes/)**.