title: How many String objects using new operator
body: <p>When we use new operator to create a String object, I read that two Objects are created one Object is string constant pool and second one is in heap memory.</p>
  
  <p>My question here is We are using new operator hence only one object should be created in Heap. Why then one more object has to be created in String Constant pool. I know Java stores String object whenever we not use new operator to create a String. For eg:</p>
  
  <pre><code>String s = "abc" . 
  </code></pre>
  
  <p>In this case only it will create in String constant pool.</p>
  
  <pre><code>String s2 = new String("abc") 
  </code></pre>
  
  <p>only one object hast to be created in heap and not in Constant pool.</p>
  
  <p>Please explain why I am wrong here.</p>