title: Why is String[] args not initialized for it to be used like other String Arrays?
body: <p>I'm learning Java and I was wondering, how String args[](<code>main</code>'s argument) works. For other string arrays defined in a method, they need to be initialized with a fixed dimension for them to be used.</p>
  
  <p>For example,For entering 10 or less elements in a string, I need to type <code>String a = new String[10];</code></p>
  
  <p>However, if  I just  type <code>String a;</code> and then type <code>a[0] = "Word;"</code>, I get a "<em>variable a might not have been initialized</em>" error. </p>
  
  <p>However, for String args[], I don't need to type <code>String[] args = new args[]</code>. Why is it so? Also, is it possible to create a string with infinite size like String args[]? (Sorry if I wasn't clear)</p>