码迷,mamicode.com
首页 > 编程语言 > 详细

Java 泛型总结

时间:2017-10-28 20:30:17      阅读:241      评论:0      收藏:0      [点我收藏+]

标签:不能   运行时   检测   extends   静态   实现   泛型类   指定   实例   

泛型总结: 

  1.  泛型具有参数化类型的能力.  可以定义使用泛型类型的类或方法, 编译器会用具体类型来替换泛型类型.

  2.  泛型的主要优势是能够在编译时而不是运行时检测错误. 

  3.  泛型类或方法允许指定这类或方法可以带有的对象类型, 如果试图使用带有不兼容对象的类或方法, 编译器或检测出这个错误.

  4.  定义在类, 接口或者静态方法中的泛型称为形式反省类型, 随后可以用一个实际具体类型来替换它. 替换泛型类型的过程称为泛型实例化.

  5. 不使用类型参数的泛型类称为原始类型, 例如ArrayList. 使用原始类型是为了向后兼容Java 较早的版本.

  6. 荣配泛型类型有三种形式: ? , ? extends T , ? super T, 这里的T代表一个泛型类型.  

    1) 第一种形式, ? 称为非受限通配, 它和 ? extends Object 是一样的.  

    2) 第二种形式  ? extends T 称为受限通配, 代表T或者T的一个子类型.

    3) 第三种形式  ? super T  称为下限通配, 表示T或者T的一个父类型.

  7.  使用称为类型消除的方法来实现泛型. 编译器使用泛型类性信息来编译代码, 但是随后消除它. 

     因此泛型信息在运行时是不可用的. 这个方法能够使泛型代码向后兼容使用原始类型的遗留代码.

  8. 不能使用泛型类型参数来创建对象.

  9. 不能使用泛型类型参数来创建数组.

  10. 不能再静态环境中使用累得泛型类型参数

   11. 在异常类中不能使用泛型类型参数.

Java 泛型总结

标签:不能   运行时   检测   extends   静态   实现   泛型类   指定   实例   

原文地址:http://www.cnblogs.com/vinsen/p/7747869.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!