title: Why "Object[] object = new String[][]" compiles? - Java
body: <p>Why does this code compile? </p>
  
  <pre><code>Object[] object = new String[5][5];
  </code></pre>
  
  <p>I mean, why can I do that if I'm creating an array object with different dimensions than specified in the reference variable?</p>
  
  <p>This doesn't compile:</p>
  
  <pre><code>String[] strings = new String[5][5];
  </code></pre>
  
  <p>So what is happening here?</p>