namespace ConsoleApplication2
{
public class B
{
public B()
{
}
public int GetAID(A a)
{
a.id = 100;
return a.id;
}
}
}
namespace ConsoleApplication2
{
public class A
{
private string _name="tan";
private int _id;
public A()
{ }
public int id
{
get
{
return _id;
}
set
{
_id = value;
}
}
public string name
{
get
{
return _name;
}
set
{
_name = value;
}
}
}
}
namespace ConsoleApplication2
{
class Program
{
static void Main(string[] args)
{
A a = new A();
B b = new B();
int returnValue= b.GetAID(a);
Console.WriteLine("returnValue="+returnValue.ToString());
Console.WriteLine("/na.ID=" + a.id.ToString());
Console.ReadLine();
}
}
}
返回值
returnValue=100;
a.ID=100;
public class B
{
public B()
{
}
public int GetAID(A a)
{
A a1 = new A();
a1 = a;
a1.id = 100;
return a1.id;
}
}
返回值
returnValue=100;
a.ID=100;
public B()
{
}
public int GetAID(A a)
{
a = new A();
a.id = 100;
return a.id;
}
}
返回值
returnValue=100;
a.ID=0;
1.对象做为实参传递时,传递的只是对象地址的copy
当参数new时,指向了新的对象
2. 值类型参数传递时,是值的copy, 当然string 除外,string是值传递,
3. 引用类型传递时,是地址的Copy