Java泛型不允许instanceOf

Java泛型不允许instanceOf 首页 / 泛型入门教程 / Java泛型不允许instanceOf

由于编译器使用类型擦除,因此运行时不会跟踪类型参数,因此在运行时无法使用instanceOf运算符验证Box <Integer>和Box <String>之间差异。

Box<Integer> integerBox = new Box<Integer>();

//Compiler Error:
//Cannot perform instanceof check against 
//parameterized type Box<Integer>. 
//Use the form Box<?> instead since further 
//generic type information will be erased at runtime
if(integerBox instanceof Box<Integer>) { }

祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)

教程推荐

手写 Python 虚拟机 -〔海纳〕

结构学习力 -〔李忠秋〕

云原生架构与GitOps实战 -〔王炜〕

攻克视频技术 -〔李江〕

操作系统实战45讲 -〔彭东〕

体验设计案例课 -〔炒炒〕

To B市场品牌实战课 -〔曹林〕

全栈工程师修炼指南 -〔熊燚(四火)〕

黄勇的OKR实战笔记 -〔黄勇〕

好记忆不如烂笔头。留下您的足迹吧 :)