解决方案 »

  1.   

    TestA A = new TestA();            
    A.Name = "zhangsan";           
     A.Age = 18;            
    TestB B = new TestB();          
      B.ClassA = A; 你上面的代码里,已经实例化了一个TestA,并且赋值给了TestB的属性,故TestB里是否实例化内部变量已经没意义了。
    如果你去掉 B.ClassA = A; 这句,就必须在B中实例化内部变量TestA.
    就这么回事。
      

  2.   


    你知道问题出 哪里了么?
    TestA A = new TestA();
    TestB B = new TestB();
     B.ClassA = A;你上面的代码  不管你private TestA _ClassA = new TestA();这句实例化还是不实例化。 你TestA 已经实例化。然后你B.ClassA=A
    此时会执行set { _ClassA = value; }  然后B的_ClassA就被赋值了,也就是被实例化了。 所以不管你在B里面_ClassA实不实例化,最后都要被实例化。看清代码执行逻辑!
      

  3.   

    类里的声明就可以
    Main里实例化
    不用太纠结这样的问题没意义
    合理地用就对了
      

  4.   

    TestA A = new TestA();
    这句代码不就是把TestA实例化了么
    你要不实例化,要这样用:TestA.Name = "zhangsan";
    如果类不是静态的,这样用应该是用不了的
      

  5.   

    B.ClassA = A;   这么写当然可以但如果是
    B.ClassA .Name = "zhangsan"; B.ClassA .Age = 18;
    那就必须实例化TestA