I know when we use String s = new String("abc");
JVM will create the object in heap and when we use String s = "abc";
the object gets created in String constant pool.
IMO, using String s = "abc";
serves our purpose. In which case we have to go for new String("abc");