Java泛型
Posted hongzxc
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java泛型相关的知识,希望对你有一定的参考价值。
泛型是Java语言的类型系统的一种扩展,以支持创建可以按类型进行参数化的类,可以把类型看作是使用参数化类型时指定的类型的一个占位符,就像方法形式参数是运行时传递的值的占位符一样
泛型的主要目的是提高Java程序的类型安全
在定义泛型类或声明泛型类的变量时,使用尖括号来指定形式类型参数。
泛型类中的类型参数几乎可以用于任何可以使用类名的地方,如:
Public interface Map<K,V>{
Public void put(K key,V value);
Public V get(K key);
}
当声明或者实例化一个泛型的对象时,必须指定类型参数的值:
Map<String,String> map=new HashMap<String,String>();
推荐的命名约定是使用大写的单个字母作为类型参数:
K---键,比如映射的键
V---值,比如List和Set的内容,或者Map的值
E---异常类
T---泛型
通过在类的定义中添加一个形式类型参数列表,可以将类泛型化,方法也可以被泛型化
类型通配符:<?>
Map<? Extends Number> 传入的类型实参必须是指定类型或者指定类型的子类
Map<? Super Number> 传入的类型实参必须是指定类型或者指定类型的父类
以上是关于Java泛型的主要内容,如果未能解决你的问题,请参考以下文章