更新Java通用类型系统

时间:2017-10-11 10:54:11

标签: java

java的开发人员是否有可能更新java的通用类型系统,使其与C#的系统相媲美?

我知道jvm在类文件中没有语言支持,但是之后可以将这些构造引入jvm语言(Class Bytecode)

Java中更好的类型系统的优点是:

  • 根本没有或没有安全警告

  • 泛型运行时反射

  • 更高的金币类型(HKT)是可能的

要看HKT的最后一点: Java支持

类的类型
Class<T>

说一个类有类型

也是合法的
Class<Class<T>>

例如对于像

这样的集合
ArrayList<T>, HashSet<T>,

但也适用于其他非集合的泛型类。 不幸的是,

Class<Class<T>> 
由于类型擦除,

在java中没有任何意义。

1 个答案:

答案 0 :(得分:1)

  

java的开发人员是否有可能更新java的泛型类型系统以使其与C#的系统相媲美?

技术上可行吗?如果你准备牺牲向后兼容性并使过去20多年来编写的大多数Java代码都过时了......是的。

实用吗?没有。

如果Oracle这样做,他们会通过疏远他们的客户群来破坏他们的Java业务;即成千上万的组织我无法猜测在编写Java软件方面有多少数十亿美元的沉没投资。

它可能会破坏他们的旗舰数据库产品线,以及他们的许多其他企业产品线。

然后诉讼就会开始。

这将是企业自杀。

用一种全新的编程语言重新开始会更有意义,我看不到Oracle这样做。