“generics”和“higher-order types”之间的关系是什么?

5
从这个问题:什么是Scala中的高阶类型?,我了解到什么是higher-order types(也称为first-order typeproper type)。
但仍然有一个问题:泛型与“高阶类型”的关系是什么?
我知道Java支持泛型,它类似于Scala中的first-order类型。
以下哪些是正确的?
  1. 在Scala中,只有first-order type是泛型
  2. 在Scala中,first-orderhigher-order类型都属于泛型
  3. 在Java中,generics只是指first-order类型,它不完整
  4. generics是一个常见的术语,意味着我们可以对类型进行“抽象”,无论是first-order还是higher-order
1个回答

1

我认为第一点是错误的。

关于第三点,由于我对Java有些生疏,所以不太确定。

但我认为第四点相当准确,并且与第二点有些相似。

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

离题(有些书呆子):还有其他人在第二点中看到了对《星际天使》的隐晦参考吗?


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接