public class A{
B b=new B();}public class B{
..
}B b=new B();这句为什么不放在方法里。在new A的时候为什么可以初始化B呢。

解决方案 »

  1.   

    这个就不用纠结了,语言设计者认为可以如此,就可以如此。如果语言设计者认为你必须在构造里初始化,那么你就只能在构造里初始化。这个不存在为什么的说法,比如pyton设计者认为你必须缩进才能运行,那么也就只能这样。
    delphi的设计者认为赋值必须写成 xxx:=1,得带:号,那么我们也只能这样