泛型程序设计(generic programming)
是程序设计语言的一种风格或范式。泛型允许程序员在强类型程序设计语言中编写代码时使用一些以后才指定的类型,在实例化时作为参数指明这些类型。
各种程序设计语言和其编译器、运行环境对泛型的支持均不一样。Ada
、Delphi
、Eiffel
、Java
、C#
、F#
、Swift
和Visual Basic
.NET
称之为泛型(generics)
;ML
、Scala
和Haskell
称之为参数多态(parametric polymorphism)
;C++
和D
称之为模板
。具有广泛影响的1994年版的《Design Patterns》
一书称之为参数化类型(parameterized type)
。