1.Collection cc=new LinkedList();
Collection ss=new Set();
这时的cc和ss还保持了linkedList和Set的特性吗,还会有插入删除轻便和重复不能插入的特性吗?是不是这2个对象完全就是被当成Collection来用了啊?
2.第二个问题,关于容器不能持有普通对象这句话怎么理解?
烦请指教!

解决方案 »

  1.   

    Collection是个java.util下的接口,它是各种集合结构的父接口。 
    LinkedList, Set继承自Collection接口 
      

  2.   

    1.ss与cc仍然保持着底层的实现特性,只是隐藏了Collection接口所不具有的特性,就像iphone用别的手机套装起来,可能有的按键就被遮住了,但是手机内部仍然是iphone,可以以iphone的方式实现所有不需要那个按钮的功能
    2.Collection不能存放基本类型,比如List不能存放int类型,java设置了基本类型的包装类来处理这个问题,List可以存放Integer,如果用泛型约束了Collection,Collection就只能存放泛型约定的那几种类型
      

  3.   

    1.ss 与 cc 有LinkedList和Set的特性,但是Collection是 父接口, 所以此时ss与cc只表现出Collection的特性。
    2.容器的约束条件不定,所以普通对象是不能放入的。只有对容器实例化后,才可放入满足约束的对象。
      

  4.   

    Collection类是基本类,你看看jdk ,很多list map都是基于这个类,可以用子类实例化它,当然了,子类的方法此时都被隐藏了