Is string a value type or a reference type?
Answers were Sorted based on User's Feedback
Answer / gulrez alam
String is Referenced Type and stored in the Heap....
Is This Answer Correct ? | 55 Yes | 2 No |
Answer / tarun kumar
String in .NET id 'Reference Type'.The reason is quite
simple.All classes in the .NET Environment are 'Reference
Type' & 'String' is a Class in .NET (not DataType as in VB
6.0)
Is This Answer Correct ? | 40 Yes | 5 No |
Answer / benjamin janecke
String is a reference type but it behaves somewhat like a
value type. So it's a bit tricky and many developers don't
know it.
Great care should be taken when doing excessive string
manipulations with the String class. As already posted,
each String is read only and can never be changed. Thus,
every manipulation creates a new instance (and causes the
garbage collector to remove old ones) which can have a
dramatic performance impact on an application. Therefore,
always use the StringBuilder class in these scenarios,
which holds only one representation of a string in memory
and performs any changes directly to that memory block.
Btw. for those who don't belive String is a reference type,
just refer to MSDN or run ILDASM und load the mscorlib.dll
module from the .NET Framework. Then go to System.String
and u'll notice it's directly inherited from System.Object -
contrary to, for instance, the System.Byte class which is
inhertied from System.ValueType, meaning Byte is a value
type, String is not.
Is This Answer Correct ? | 36 Yes | 2 No |
Answer / sheetal shivdas
run this code : to see that string is reference type
SByte a = 0;
Byte be = 0;
Int16 c = 0;
Int32 d = 0;
Int64 ee = 0;
String s = "";
Exception ex = new Exception();
object[] Types = { a, be, c, d, ee, s,ex };
foreach (object obj in Types)
{
string type;
if (obj.GetType().IsValueType)
type = "Value Type";
else
type = "Reference Type";
Response.Write(type);
}
Is This Answer Correct ? | 32 Yes | 5 No |
string is a reference type.
string str = "hello";
char x = str[1];
here what we do is handling the memory.
which type allows you to handle the memory is reference types.
Is This Answer Correct ? | 26 Yes | 1 No |
Answer / albn
String is a reference type. If two string variable has the
same string it stored in the same heap memory address.
eg in VB.Net
Dim a as string="Hello"
dim b as string="Hello"
both variable refer to same memory address. As strings are
immutable reference type you can't get the change in one
variable to another.
Is This Answer Correct ? | 19 Yes | 4 No |
Answer / micho
Strings are reference types, but they are special reference
types because they are made to behave like value-types.
For instance, after assigning a string to another, the two
strings remain independent. Likewise, you compare strings
with the = operator (because it is overloaded).
You can open the MSDN and see that strings are classes (ie,
reference-types).
Is This Answer Correct ? | 0 Yes | 1 No |
How is session id generated?
What is masterpage?
Suppose you want a certain ASP.NET function executed on MouseOver overa certain button. Where do you add an event handler?
I have a method written in WebForm (means .aspx page) & now I want to call this method in WebUserControl (means .ascx page) what should I have to do?
What is asp according to you?
We have 2 sites in which one site allows the user with out asking credentials and second one ask for credentials through a log page. What might be the configurations settings for both sites? We can use IIS and web.config files together.
What is __ requestverificationtoken?
Is asp.net free?
Explain the asp.net page life cycle.
Which tab of the web site administration tool do you use to manage application setting ,debug and tracing?
What is three major points in WCF?
what is view stat? how it is use.