zoukankan      html  css  js  c++  java
  • Java学习笔记【十、泛型】

    简介
    Java 泛型(generics)是 JDK 5 中引入的一个新特性, 泛型提供了编译时类型安全检测机制,该机制允许程序员在编译时检测到非法的类型。
    泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。

    泛型方法

    • 泛型方法的类型参数声明在返回类型之前
    • 类型参数声明可包含一个或多个类型参数 public static < E,T > T printArray( E[] inputArray )
    • 类型参数能被用来声明返回类型,或形参类型,并在方法体中使用
    • 类型参数只能代表引用类型,不能代表原始类型
    • 可以使用 extendeds 或 implements 限定泛型类型参数 public static <T extends Comparable> T maximum(T x, T y, T z)

    泛型类

    • 泛型类的类型参数声明在类名之后 public class Box<T,E>
    • 类型参数可在类定义中使用

    类型通配符

    • 用 ? 代替具体类型,如 List<?> 在逻辑上是List>,List 等所有List<具体类型实参>的父类。
    • 用 extends 或 implements 对 ?做上限限定 public static void getUperNumber(List<? extends Number> data)
    • 类型通配符下限通过形如 List<? super Number>来定义,表示类型只能接受Number及其三层父类类型,如Objec类型的实例
  • 相关阅读:
    Luogu P4071 [SDOI2016]排列计数
    CF 961E Tufurama
    Luogu P2057 [SHOI2007]善意的投票
    Luogu P2756 飞行员配对方案问题
    POJ2151
    POJ 3349&&3274&&2151&&1840&&2002&&2503
    POJ 2388&&2299
    EZ 2018 03 30 NOIP2018 模拟赛(六)
    POJ 1459&&3436
    BZOJ 1001: [BeiJing2006]狼抓兔子
  • 原文地址:https://www.cnblogs.com/shanelau/p/6442430.html
Copyright © 2011-2022 走看看