首页 > 代码库 > 泛型的使用

泛型的使用




泛型的使用
 * 1.在集合中使用泛型(掌握)
 * 2.自定义泛型类、泛型接口、泛型方法(理解 --->使用)
 * 3.泛型与继承的关系
 * 4.通配符


①.在集合中没有使用泛型的情况下
  1.没有使用泛型,任何Object及其子类的对象都可以添加进来
  2.强转时,可能报ClassCastException的异常

②.在集合中使用泛型
  规定了集合中只能放置同一类型的类
    List<Integer> list = new ArrayList<Integer>();
    list.add(78);
    list.add(87);
    Iterator<Integer> it = list.iterator();
    while(it.hasNext()){
 System.out.println(it.next());
    }

③.自定义泛型类的使用
  1.当实例化泛型类的对象时,指明泛型的类型。
    指明以后,对应的类中所有使用泛型的位置,都变为实例化中指定的泛型的类型
  2.如果我们自定义了泛型类,但是在实例化时没有使用,那么默认类型是Object类的

④泛型与继承的关系:
  若类A是类B的子类,那么List<A>就不是List<B>的子接口
 
⑤.通配符 ?
   List<A>、List<B>、。。。。都是List<?>的子类
   ? extends A :可以存放A及其子类
   ? super A:可以存放A及其父类
⑥.通配符的使用
   可以读取声明为通配符的集合类的对象
   不允许向声明为通配符的集合类中写入对象。唯一例外的是null

泛型的使用