what is meant by string pooling?
Answer Posted / ranganathkini
A string pool is a collection of references to String
objects. Strings, even though they are immutable, are still
objects like any other in Java. Objects are created on the
heap and Strings are no exception. So, Strings that are part
of the "String Literal Pool" still live on the heap, but
they have references to them from the String Literal Pool.
When a .java file is compiled into a .class file, any String
literals are noted in a special way, just as all constants
are. When a class is loaded (note that loading happens prior
to initialization), the JVM goes through the code for the
class and looks for String literals. When it finds one, it
checks to see if an equivalent String is already referenced
from the heap. If not, it creates a String instance on the
heap and stores a reference to that object in the constant
table. Once a reference is made to that String object, any
references to that String literal throughout your program
are simply replaced with the reference to the object
referenced from the String Literal Pool.
| Is This Answer Correct ? | 37 Yes | 4 No |
Post New Answer View All Answers
What is java util list?
What is the purpose of the finally clause of a try-catch-finally statement in java programming?
What is boolean strategy?
Which method must be implemented by all threads?
What is difference between variable declaration and definition?
Can You Have Virtual Functions In Java?
How to make a write-only class in java?
What is the use of optional ?
What is a super method?
What is a classloader in java?
Differentiate between stringbuffer and string?
What is the symbol for average?
Does java isempty check for null?
Explain with example the concept of constant variable in java.
What is comparable and comparator interface? List their differences