No it does work.
Try compiling and running this code.
I thought it shouldnt work but it does.
import java.util.*;
public class Sample4
{
public static void main(
String[] args)
{
Outer o = null;
Outer.Inner in = o.new Inner();
}
}
class Outer
{
class Inner
{
{
System.out.println("Inner");
}
}
}