jvm平台未来可能移除类型擦除吗?

新手上路,请多包涵

题主之前写过一点c#,现在因业务需要用JAVA,发现基于jvm的许多语言都有类型擦除,用着确实体验不太好。这里想问一问JAVA社区有没有计划移除类型擦除,或者目前有没有一款jdk是没有类型擦除的?

阅读 2k
3 个回答

不太可能。

因为一开始做成类型擦除的泛型形式就是为了保持兼容性。而你的想法正好与这个初衷背道而驰。

不过你倒是可以期待一下 Valhalla 这个提案,虽然还是会类型擦除,但是会特化泛型,起码在运行时还是可以拿到一些泛型信息的,而不是像现在这样必须还得传个 Class<?> 才行。

我觉得移除类型擦除的可能性不大,有太多历史代码过不了强类型检查。别的都好说,可以降级为 Object 来处理。但是类型反射那一部分可能有难度。

个人感觉 Kotlin 还是蛮好用的,这里有一个我在团队的分享录像可以了解一下,因为是内部分享,没太注意语言这些,用的椒盐普通话。有些听不太清的地方,看字幕,或者直接忽略就好了。

不太可能. 当初做范型选择了类型擦除这条路, 就不可能再改回去.

我一直认为选类型擦除这种实现是个弱智行为. 把好好的一个功能给阉割了.

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题