class Test2
{
   public static void main(String[] args) {
    B b=new B();
    }
}
class B 
{
public B()
{

          System.out.println("I'm B");
         }
         D d=new D();
}class D
{
public D()
{
System.out.println("I'm D");
}
}这行代码为什么会先执行D d=new D();而不是先执行 B的购造方法??