通过所有派生类共享基类中的对象

本文关键字:基类 对象 共享 派生 | 更新日期: 2023-09-27 17:57:33

我有一组由类表示的测试步骤。每个人都有自己的数据和方法,所以都是标准的东西。所有读取自XML配置。

然而,一次测试的结果可能会被用作下一次测试中的参数,我在尝试以最佳方式实现这一点时遇到了一些困难。

我考虑过有一个类,本质上是一个对象的字典,因此每个存储的值都可以与一个唯一的键相关联,并且以后在任何使用该键的地方,测试都可以从字典中获取它并使用它(显然,错误/类型检查等需要非常好)。我真的不喜欢这个,但不确定是否有其他的c#功能模式可以处理这个问题?

所以有点像这样:

<TestRunner xsi:type="TestType1" OutputValue="ResultIndx1"/>
<TestRunner xsi:type="TestType2" InputValue="ResultIndx1"/>

我不相信在C#中,在层次结构的基类中有一个对象,然后通过所有基类共享,是吗?

所以这让我更加倾向于单身,但如果可能的话,我想避免。

有什么想法吗?

感谢

通过所有派生类共享基类中的对象

基类中一个非私有的静态成员就足够了。

您可以使基类中的对象受保护