急,函数调用出问题,帮忙看下
请各位高手看下该程序结果,为什么?
class Chinese
{ static Chinese cc=new Chinese();
static int cout=0;
Chinese()
{
System.out.println(++cout);
}
}
class Test1
{
public static void main(String[] args)
{
Chinese c1=new Chinese();
Chinese c2=new Chinese();
System.out.println(c1==c2);
}
}
这个结果是1 1 2,false
但是如果把static Chinese cc=new Chinese();这一句放在构造方法chinese()之后结果又不同,结果是1 2 3,false
为什么?即是
class Chinese
{ static int cout=0;
Chinese()
{
System.out.println(++cout);
}
static Chinese cc=new Chinese();
}
class Test1
{
public static void main(String[] args)
{
Chinese c1=new Chinese();
Chinese c2=new Chinese();
System.out.println(c1==c2);
}
}
是跟静态static有关吗?