title: Short object creation
body: <p>I had a look to this post <a href="https://stackoverflow.com/questions/11526432/java-instantiate-short-object-in-java">Java instantiate Short object in Java</a> but did not exactly respond to what I am looking for.</p>
  
  <p>Does anybody know why the first line (//1) gives an error whereas the second line (//2) does not</p>
  
  <pre><code>  Short s = new Short(4);//1
  
      short s1 = 4;//2 Here I know why it works it gets
   //implicitly narrow converted into a short. 
  </code></pre>
  
  <p>As stated in the code, I understand why the second line works fine, but what about the first line? Where is the sense of writing <code>Short s = new Short((short)4);</code>
  Bottom line: why does it not cast it implicitly? It is a constant not a variable.</p>
  
  <p>Thanks in advance.</p>