继承一个新的基类(继承旧的基类)是一个重大改变?

时间:2012-06-11 05:58:39

标签: .net inheritance compatibility

我有LegacyClass类,它继承了OldBaseClass。

我正在考虑进行更改以在其间引入新类

LegacyClass继承NewBaseClass AND NewBaseClass继承OldBaseClass。

NewBaseClass和OldBaseClass都不是抽象的。此更改是否会破坏依赖(甚至可能继承)LegacyClass的旧MSIL程序集的程序集兼容性?

1 个答案:

答案 0 :(得分:3)

this answer中所述,只要您实际上没有更改任何现有行为(更具体地说,取决于行为的更改方式),它应该没问题。如果新类所做的都是添加新的(单独的)方法/属性,那么你应该没问题。但是,通常情况下,取决于。请考虑以下问题:

  • 谁在使用您的程序集(局外人员或仅在您组织内的人员)?
  • 您是否可以重新编译客户端?
  • 您是否可以对这些客户端运行自动或手动单元测试?
  • 您的目标是添加或更改LegacyClass的功能吗?