Java培训课程SE基础之泛型的特殊点

泛型嵌套:由外到内分析

     public static void main(String[] args) {

          HashMap<String,ArrayList<Citizen>> map = new HashMap<String,ArrayList<Citizen>>();

          ArrayList<Citizen> list = new ArrayList<Citizen>();

          list.add(new Citizen(“刘恺威”));

          list.add(new Citizen(“杨幂”));

          list.add(new Citizen(“小糯米”));

          map.put(“刘恺威”, list);

 

          Set<Entry<String, ArrayList<Citizen>>> entrySet = map.entrySet();

          Iterator<Entry<String, ArrayList<Citizen>>> iterator = entrySet.iterator();

          while(iterator.hasNext()){

               Entry<String, ArrayList<Citizen>> next = iterator.next();

               String key = next.getKey();

               ArrayList<Citizen> value = next.getValue();

               System.out.println(“户主:”+key);

               System.out.println(“家庭成员:”+value);

          }

     }

 泛型的特殊点

1、泛型没有多态

如果B是A的一个子类型(子类或者子接口),而G是具有泛型声明的类或接口,G<B>并不是G<A>的子类型!

比如:String是Object的子类,但是List<String >并不是List<Object>的子类。

北京java培训机构

北京java培训机构

2、没有泛型数组

北京java培训机构

3、jdk1.7简化泛型

       //jdk1.7,泛型的简化操作

       ArrayList<Fruit> flist = new ArrayList<>();

 

4、不能在try-catch中使用泛型定义

try{

}catch(T t){}        

}


上一篇:
下一篇:
关于尚硅谷
教育理念
名师团队
学员心声
资源下载
视频下载
资料下载
工具下载
加入我们
招聘岗位
岗位介绍
招贤纳师
联系我们
电话:010-56253825
邮箱:info@atguigu.com
地址:北京市昌平区宏福科技园综合楼6层(北京校区)

 深圳市宝安区西部硅谷大厦B座C区一层(深圳校区)

上海市松江区谷阳北路166号大江商厦6层(上海校区)