WHAT'S NEW?

Difference in String declared using new and = sign

String declared using new and = have differences.

Difference in String Declaration


String Literals (Declared using = sign)

When a String is declared using = sign it is considered as String literal.

When a String is declared using = sign it is stored in String Constant Pool rather than making a new object for memory management.

String Constant Pool looks something like this
String Constant Pool 

When a String is defined using = sign it goes in String Constant Pool.

If the String is already there in the Pool the object will point at the location of the String which is already in the pool rather than making it a new entry.

Consider a project made for a company with name Asterix Solution , imagine how many times this single String will be used. Image at the end will clear the doubt 


String Object(Declared using new operator)


When a String is declared using new keyword, it is considered as a normal object and unlike literals they go in Object Heap as a normal object rather than going in String Constant Pool.





0 comments:

Post a comment