Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/api/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 推断类型是否反映在字节码中?_Java_Type Inference_Type Erasure - Fatal编程技术网

Java 推断类型是否反映在字节码中?

Java 推断类型是否反映在字节码中?,java,type-inference,type-erasure,Java,Type Inference,Type Erasure,我知道Java中的类型推断和类型擦除,但我不确定它们是如何工作的。比如说List List=List.of(1)。由于of(E…elements)接受某类元素的可变数量并返回List,因此我假设E被推断为整数 我感到困惑的部分是,既然E已经被推断为Integer,那么E在编译时的类型擦除之后是否仍然擦除到对象?类型擦除是如何工作的?如果推断的类型没有“存储”/“结转”,那么类型推断的意义是什么?是的,编译时,泛型只创建一个专门化,使用Object,假设您有两个listlist我不理解您的最后一个

我知道Java中的类型推断和类型擦除,但我不确定它们是如何工作的。比如说
List List=List.of(1)
。由于
of(E…elements)
接受某类元素的可变数量并返回
List
,因此我假设
E
被推断为整数


我感到困惑的部分是,既然
E
已经被推断为
Integer
,那么
E
在编译时的类型擦除之后是否仍然擦除到
对象
?类型擦除是如何工作的?如果推断的类型没有“存储”/“结转”,那么类型推断的意义是什么?

是的,编译时,泛型只创建一个专门化,使用Object,假设您有两个list
list我不理解您的最后一个问题。什么的意义是什么?推断的类型用于检查程序的类型错误,然后丢弃。@Sweeper,我已经编辑了它。我想问一下类型推断的意义,因为我很好奇,如果不进行类型推断,那么推断类型的意义何在。对不起,如果它是混乱的,谢谢你指出它@路易斯瓦瑟曼,谢谢我很感激!现在一切都有了意义:)这真的很全面,我很感激。非常感谢你的帮助!如果它有帮助,请考虑UVoTION。我的坏,恭喜!