本帖最后由 mylovein666 于 2012-10-16 11:36:59 编辑

解决方案 »

  1.   

    "把List<B>转换为List<A>"
    本身就是“反类型安全”的能说说你为什么要 把List<B>转换为List<A> 么?
      

  2.   

    说了,基于接口编程。 你可能有很多类-- B,C,D,E,F都是从A继承的,但是Controller只要操作A和List<A>就可以了。
      

  3.   


    List<? extends A> bs= new ArrayList<B>();
    List<A> as=(List<A>)bs;
    as.add(new A());
      

  4.   


    基于接口编程只用 List<A> 就行了,List<B> 从头到尾都不应该出现。