关于接口和类的一个问题
程序如下:
static void Main(string[] args)
{
Point p = new Point();
p.x = p.y = 1;
Console.WriteLine(p);
p.Change(2,2);
Console.WriteLine(p);
Object o = p;
Console.WriteLine(o);
((Point)o).Change(3,3);
Console.WriteLine((Point)o);
((IChangeBoxedPoint)p).Change(4,4);
Console.WriteLine(p);
((IChangeBoxedPoint)o).Change(5,5);
Console.WriteLine(o);
}
interface IChangeBoxedPoint
{
void Change( Int32 x, Int32 y );
}
struct Point:IChangeBoxedPoint
{
public Int32 x;
public Int32 y;
public void Change( Int32 x, Int32 y)
{
this.x = x;
this.y = y;
}
public override string ToString()
{
return string.Format( "({0},{1})",x,y );
}
}
答案是:
(1,1)
(2,2)
(2,2)
(2,2)
(2,2)
(5,5)
对于(3,3)(4,4)(5,5)的请了解的人解答一下。谢谢