“通用”一词的最佳解释是什么?

时间:2009-04-20 15:51:55

标签: java objective-c generics terminology

我正在寻找一个很好的解释,也许还有一些例子。根据我的理解,当它可用于多种目的时,某些东西是“通用的”。但我可能错了......

5 个答案:

答案 0 :(得分:7)

根与“属”相同 - 它意味着描述一组相关事物的所有成员。

在编程术语中,它意味着您正在描述共享共同模式或模板的整个事物集合,只有很小的变化。对于程序员来说,C ++模板和Java泛型或多或少是相同的东西:一种说法“无论底层类型是什么,我希望能够做这些事情。”实现方法不同,但想法是一样的。

因此,这个想法本身就是一般性的。

答案 1 :(得分:2)

使用对比的一个例子。

具体:StringCollection是.Net中的一个集合,只能保存字符串。

Generic:Generic.List(Of T)是.Net中的一个集合,可以保存任何数据类型T.

答案 2 :(得分:2)

您想要“通用”定义,还是在特定的上下文中?

在一般意义上,“泛型”描述的过程或结构本身并不强制执行必须调用它的严格上下文。与此同时,它必须充分了解其背景是否有意义。例如,添加数字的通用结构不关心是给定浮点数还是整数参数,但是添加Q + Pi会有困难。

在某种程度上,这是面向对象编程的基础。但是,许多编程语言在更严格的意义上使用术语“通用”。在这些语言中,泛型类可以在运行时强类型化,以实现订阅者知道如何与之交互的已知“接口”(在一般意义上......)的任何类。语言在实现和支持方面差异很大,因此除非您事先确定所需语言,否则具体示例可能无法提供更多洞察力。

答案 3 :(得分:1)

Generics的另一个名称是参数化类。我相信UML使用那个术语。

答案 4 :(得分:0)

通用类用于特定目的