“多态性”一词最早用于生物学,指同一种族的生物体具有相同的特性。
在C#中,多态性的定义是:同一操作作用于不同的类的实例,不同的类将进行不同的解释,最后产生不同的执行结果。C#支持两种类型的多态性:
编译时的多态性
编译时的多态性是通过重载来实现的。我们在第十一章中介绍了方法重载的操作符重载,它们都实现了编译时的多态性。
对于非虚的成员来说,系统在编译时,根据传递的参数、返回的类型等信息决定实现何种操作。
运行时的多态性
运行时的多态性就是指直到系统运行时,才根据实际情况决定实现何种操作。C#中,运行时的多态性通过虚成员实现。
编译时的多态性为我们提供了运行速度快的特点,而运行时的多态性则带来了高度灵活和抽象的特点。
时间: 2024-11-10 00:23:48