加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

为什么Java泛型类型参数在运行时没有实现?

发布时间:2020-12-14 23:36:29 所属栏目:Java 来源:网络整理
导读:我的理解是C#和 java在某些方面在泛型方面有所不同,其中之一是泛型类型参数在运行时在C#/ .NET中可用但在 Java中不可用.为什么 Java语言设计者会这样做? 解决方法 允许二进制兼容pre-generics字节码,因此允许新代码与旧代码接口. 从The Java Tutorials的Typ
我的理解是C#和 java在某些方面在泛型方面有所不同,其中之一是泛型类型参数在运行时在C#/ .NET中可用但在 Java中不可用.为什么 Java语言设计者会这样做?

解决方法

允许二进制兼容pre-generics字节码,因此允许新代码与旧代码接口.

从The Java Tutorials的Type Erasure页开始:

Type erasure enables Java applications
that use generics to maintain binary
compatibility with Java libraries and
applications that were created before
generics.

[…]

Type erasure exists so that new code
may continue to interface with legacy
code.

有关相关问题,请查看C# vs Java generics.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读