title: Why instantiation of static nested class object is allowed?
body: <p>I have started learning Java language for Android Application developement.</p>
  
  <p>As per my understanding based on static class, we cannot instantiate object of static class.</p>
  
  <p>But why instantiation of static nested class object is allowed in following situaltion?</p>
  
  <pre><code>class EnclosingClass 
  {     
        //...     
        class static StaticInnerClass 
        {         
            //...     
        } 
  } 
  </code></pre>
  
  <p>Why we can create object of inner class if it is marked as static?</p>
  
  <pre><code>EnclosingClass.StaticInnerClass s = new EnclosingClass.StaticInnerClass()
  </code></pre>