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 |
Which variables are stored in heap?
What are java packages?
Can a class be defined inside an interface?
What is a final class ?
What is the difference between a method and a function in alice?
What is defined as false sharing in the context of multithreading?
What is a stringbuffer?
Give us the name of the list layoutmanagers in java?
What is the return type of readLine() when end of a file is reached?
What is a newline character in java?
Can array grow dynamically in java?
Give a brief description of java socket programming?