极悦注册教程:Java泛型的用法_极悦注册
专注Java教育14年 全国咨询/投诉热线:444-1124-454
极悦LOGO图
始于2009,口口相传的Java黄埔军校
首页 学习攻略 极悦注册 极悦注册教程:Java泛型的用法

极悦注册教程:Java泛型的用法

更新时间:2019-12-20 15:39:04 来源:极悦 浏览2088次

今天小编主要介绍Java中泛型的用法,实例总结了java中泛型的常见使用技巧,需要的朋友可以参考下

极悦注册教程:Java泛型的用法

  1 基本使用

      极悦注册教程:Java泛型的用法

    2 泛型与子类

      Child是Parent的子类,List<Child>却不是List<Parent>的子类。
      因此:List<Object> list = new ArrayList<String>()是错误的。
      如果上面是正确的,那么:

     极悦注册教程:Java泛型的用法

  3 wildcards

  因为2的原因,下面的实现用于统配集合的输出是不行的

      极悦注册教程:Java泛型的用法

  因此,需要通配符?:

     极悦注册教程:Java泛型的用法

  此处的?表示类型未知,但是任何对象均是Object,因此上例的1是正确的。但下例却是错误的:

      极悦注册教程:Java泛型的用法

  原因也很明确,? extends MyClass说明类型是MyClass的子类,但是却并不知道具体类型

  4. 泛型方法

  上例可以实现为:

     极悦注册教程:Java泛型的用法

  编译器在保证语义的前提,会帮忙做类型的转换工作。

  5. 泛型运行时的对比

     极悦注册教程:Java泛型的用法

  因为泛型类运行时时一样的。

  6 泛型数组(可能导致类型不安全)

  代码如下:

       List<String>[] lsa = new ArrayList<String>[10]; // error

  如果可以的话,可能导致类型不安全。如:

      极悦注册教程:Java泛型的用法

       以上就是极悦注册机构小编介绍的“极悦注册教程:Java泛型的用法”的内容,希望对大家有帮助,如有疑问,请在线咨询,有专业老师随时为你服务。

       相关文章

  

  

  

  

  

提交申请后,顾问老师会电话与您沟通安排学习

免费课程推荐 >>
技术文档推荐 >>