class A
{
public static int X;
static A()
{
X = B.Y+1; }
}
class B
{
public static int Y=A.X+1;
static B() { } }有static B() { }和没有static B() { }为什么A.X和B.Y的值正好相反
有的话A.X=2 B.Y=1
没有的话A.X=1 B.Y=2
高人指点!!
{
public static int X;
static A()
{
X = B.Y+1; }
}
class B
{
public static int Y=A.X+1;
static B() { } }有static B() { }和没有static B() { }为什么A.X和B.Y的值正好相反
有的话A.X=2 B.Y=1
没有的话A.X=1 B.Y=2
高人指点!!
有就是先调B将Y弄成1
A的X就是2了
没有就是先调A将X弄成1
B的Y就是2了
如果带上静态构造函数,就会先调用classA里的构造函数,然后在调用本身,所以结果刚刚好出现了楼主所说的情况了.