我阅读了有关使用扩展方法向接口(interface)添加方法的信息,但是我也在考虑为什么不从包含虚拟方法的接口(interface)派生基类(当然,如果您从一开始就可以灵活地进行设计) .如果需要,使用基类也可以增加覆盖的灵 active 。
最佳答案
两者各有优势。
基类:
- 您可以在私有(private)字段中存储状态。
- 如有必要,可以在子类中覆盖这些方法。
- 实现在一个地方,而不是分散在(可能)许多扩展方法类中。
扩展方法:
- 不要求您的接口(interface)实现者继承给定的基类。由于 C# 不支持多重继承,因此这可能是一个重要问题。
- 不需要访问类的源代码。
关于c# - 接口(interface)扩展 - 基类或扩展方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40149858/