它们各自的优缺点是什么?
- 接口(interface)方法
- 虚方法
- 抽象方法
什么时候应该选择什么?做出这一决定时应牢记哪些要点?
最佳答案
虚拟和抽象几乎是一样的。虚方法在基类中有一个可以选择被覆盖的实现,而抽象方法没有而且必须在子类中被覆盖。否则它们是相同的。在它们之间进行选择取决于情况。如果你有一个基础实现,你使用虚拟。如果你不这样做,并且你需要每个后代自己实现它,你就选择抽象。
接口(interface)方法是类实现的接口(interface)中声明的方法的实现。这与其他两个完全无关。我认为方法可以是虚拟的,也可以是接口(interface)的。接口(interface)的优点是您声明一个接口(interface)(duh),可以由两个完全不同的类实现。这样,您可以在两个不同的类上运行相同的代码,只要您要调用的方法在它们共享的接口(interface)中声明即可。
关于c# - 比较 : interface methods vs virtual methods vs abstract methods,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4762930/