This week's giveaway is in the EJB and other Java EE Technologies forum. We're giving away four copies of EJB 3 in Action and have Debu Panda, Reza Rahman, Ryan Cuprak, and Michael Remijan on-line! See this thread for details.
An anonymous class can extend a class or implement an interface at a time not both.
An inner class can be instantiated outside of a class provided it is not private but only using the reference of the outer class. That is you must create an instance of the outer class to instantiate the inner class. This is the case of (non static inner class). To instantiate a static inner class you dont require to first instantiate the outer class. You do like this:
Outer.inner in = new Outer.inner(); //inner is static