difference between String a; and String a=new String();?
y do v need to assign memory to the variable?
Answers were Sorted based on User's Feedback
String a;
jvm creates a reference & allocates memory for storing hashcode value
String a=new String();
jvm creates a object to String class in heap memory & returns the unique hexadecimal equivalent of that memory location which is stored in reference variable a as hashcode.
We dont need to assign memory to variable.because in java memory management is taken care by jvm automatically.Programmer need not worried about memory allocation issue.But yes jvm allocates memory for variable to store hashcode, if it is a referenced variable.If it is primitive type variable then jvm will not allocate extra memory for that variable.Because primitive types stored in object & there is memory allocated for object by jvm.
Is This Answer Correct ? | 5 Yes | 0 No |
Answer / janardhan
String a; :---
JVM will create String object in SCPM(String constant pool
memory)only.
String a=new String();:---
JVM will create String object in two memories
1. Heap memory
2. String constant pool memory.
Is This Answer Correct ? | 2 Yes | 1 No |
What is canonical name in java?
What does the “static” keyword mean?
Difference between Encapsulation and Abstraction
Hi Friends, can you give difference between extending thread class and implementing runnable interface.
How many statements can be created with one connection in jdbc?
How we can make copy of a java object?
Nullpointer exception is a very common exception. Why is it not made as a checked exception?
What is difference between add() and addelement() in vector?
What are the 3 types of control structures?
extending thread class or implementing runnable interface. Which is better? : Java thread
What are mutable classes?
what is aggregation in java?