解决方案 »

  1.   

    怎么会不可以呢? 你都没搞清类的继承关系。
    你定义了一个老子。然后有二个儿子继承于老子
    这个老子的数组里当然可以放这二个儿子进去。你都可以直接定义一个老子,但却NEW一个儿子给他。这就是像是一个Control类的对象,但你放了一个textbox对象进去一样。这叫向下兼容。这么讲明白了吗?
      

  2.   

    简单的说就是is a 成立。子类 is a 父类 是符合逻辑的。例如Cow is a animal. 
      

  3.   

    转换的只是引用,而不是对象。Animal a = new Cow();
    Cow b = (Cow)a;
    a是一个Animal类型的引用,指向一个Cow类型的对象。因此可以把引用转换回成Cow.