抛砖引玉:在C#中的对象引用的问题
2010-03-30 10:52 kwjlk 阅读(281) 评论(0) 收藏 举报public class Test
{
private string_Name;
public stringName
{
get{ return _Name; }
set{ _Name = value; }
}
}
public classTestMethod
{
public staticvoid Change(Testt)
{
t.Name = "狗狗";
}
public staticvoid Change(stringstr)
{
str = "狗狗";
}
}
public classTestFunction
{
public voidChange(Test t)
{
t.Name = "猪猪";
}
public voidChange(string str)
{
str = "猪猪";
}
}
static voidMain(string[] args)
{
Testt = new Test();
stringstr = "asd";
t.Name = "wolf";
TestMethod.Change(t);
TestMethod.Change(str);
Write(t.Name);
Write(str);
Testt1 = new Test();
t1 = t;
stringstr1 = str;
newTestFunction().Change(t1);
newTestFunction().Change(str);
Write(str1);
Write(t1.Name);
Console.ReadKey();
}
static voidWrite(string str)
{
Console.WriteLine(str);
}
What will output?
Yeah,the result is
狗狗
asd
asd
猪猪
Why this funny thing happen?
浙公网安备 33010602011771号