泛型的简介
1、为什么要使用泛型?
一般使用在集合上,比如现在把一个字符串类型的值放入到集合里面,这个时候,这个值放到集合之后,失去本身的类型,只能是object类型。这时,如果想要对这个值进行类型转换,很容易出现类型转换错误,怎么解决这个问题,可以使用泛型来解决。
2、在泛型里面写是一个对象,String 不能写基本的数据类型 比如int,要写基本的数据类型对应的包装类
基本数据类型 | 对应包装类 | 基本数据类型 | 对应包装类 |
byte | Byte | short | Short |
int | Integer | long | Long |
float | Float | double | Double |
char | Character | boolean | Boolean |
java泛型的局限探究
1、泛型类的静态上下文中类型变量失效。
1
2
3
4
5
|
//静态域或者方法里不能引用类型变量 private static T instance; //静态方法 本身是泛型方法就行 private static <T> T getInstance(){ } |
2、不能实例化类型变量。
1
2
3
|
// public Restrict() { // this.data = new T(); // } |
3、不能用基本类型实例化泛型参数。
1
2
|
// NormalGeneric<double> normalGeneric = new NormalGeneric<>(); NormalGeneric<Double> normalGeneric = new NormalGeneric<>(); |
4、不能创建参数化类型的数组。
1
2
|
Restrict<Double>[] restrictArray; Restrict<Double>[] restricts = new Restrict<Double>[ 10 ]; |
到此这篇关于java泛型的局限探究及知识点总结的文章就介绍到这了,更多相关java泛型的局限探究内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!
原文链接:https://www.py.cn/java/jiaocheng/31323.html