什么是" generics"之间的关系?和"高阶类型"?

时间:2015-08-02 07:53:09

标签: java scala generics higher-order-types

从这个问题:What is a higher kinded type in Scala?,我了解higher-order typesfirst-order typeproper type)。

但仍有一个问题:generics和"高阶类型"之间的关系是什么?

我知道Java支持generics,就像Scala中的first-order类型一样。

以下哪项是正确的?

  1. 在Scala中,只有first-order typegenerics
  2. 在Scala中,first-orderhigher-order类型都属于generics
  3. 在Java中,generics仅表示first-order类型,它不完整
  4. generics是一个常用术语,意味着我们可以"抽象"关于类型,无论first-order还是higher-order

1 个答案:

答案 0 :(得分:1)

我会说(1.)是错的。 我不确定(3.)因为我在Java方面有点不合时宜。 但我会说(4.)非常准确,有点类似于(2。)。

据我所知,术语泛型仅指类型参数的用法。它适用于一阶高阶类型或函数。

Offtopic(有些神经质):是否有其他人在(2。)中看到 Wing Commander 的隐藏引用