义取决于具体的编程语言中「X 环境中，可以安全地使用 Y」的意义。编程语言的类型系统定义了各自不同的子类型关系。由于子类型关系的存在，某个对象可能同时属于多种类型，因此，子类型（）是一种类型多态的形式，也被称作子类型多态（）或者包含多态（）。在面向对象程序设计中，多态一般仅指这里所说的「子类型多态」，而「参数多态」则一般被称作泛型编程。子类型与面向对象语言中（类或对象）的继承是两个概念。子类型反映了类型（即面向对象中的接口）之间的关系；而继承反映了一类对象可以从另一类对象创造出来，是语言特性的实现。