什么是运行时和编译时多态?

时间:2011-05-28 19:50:24

标签: c# oop polymorphism

任何人都可以向我解释运行时多态性和编译时间多态性与C#相关吗?

我在SO上发现了类似的问题但它们是关于C ++的。

1 个答案:

答案 0 :(得分:3)

这是一个有很好解释的网站:

http://www.dickbaldwin.com/csharp/Cs000120.htm

引用文章:

  

这种类型的多态通常被称为运行时多态的原因是因为在运行时之前无法决定执行哪个版本的方法。无法在编译时做出决定(如重载方法的情况)。

     

无法在编译时做出决定,因为编译器无法知道(编译程序时)对象的实际类型,其引用将存储在引用变量中。

     

在极端情况下,例如,可能在运行时从编译器不知道的网络连接获取对象。