java泛型是如何工作的呢?

杨采妮 Java面经 发布时间:2022-05-28 23:16:27 阅读数:18426 1
下文笔者讲述java泛型的工作原理,如下所示
在了解泛型工作原理前,我们先了解一些泛型涉及的概念

	1、类型检查:在生成字节码之前提供类型检查
	2、类型擦除:所有类型参数都用他们的限定类型替换,包括类、变量和方法(类型擦除)
	3、当类型擦除和多态性发生了冲突时,则在子类中生成桥方法解决
	4、当调用泛型方法的返回类型被擦除,则在调用该方法时插入强制类型转换   
例:
类型擦除
 所有类型参数都用他们的限定类型替换:
   如T->Object   ? extends BaseClass->BaseClass

泛型的工作原理

 泛型是通过类型擦除来实现的
   编译器在编译时擦除了所有类型相关的信息
   所以在运行时不存在任何类型相关的信息
   
   如 list<String>在运行时仅用一个List来表示
   这样做的目的,是确保能和Java 5之前的版本开发二进制类库进行兼容
   你无法在运行时访问到类型参数
   因为编译器已经把泛型类型转换成了原始类型
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

本文链接: https://www.Java265.com/JavaMianJing/202205/16537510373549.html

最近发表

热门文章

好文推荐

Java265.com

https://www.java265.com

站长统计|粤ICP备14097017号-3

Powered By Java265.com信息维护小组

使用手机扫描二维码

关注我们看更多资讯

java爱好者