我相信这个问题是相当基本的,但我很难找到这个问题的答案。在 C# 中,假设我有 3 个类:A, B, C
B 派生自 A
C 派生自 B
现在,如果我想要一个 A 类对象的列表或数组,但希望该数组能够容纳 B 和 C 类型的对象,这没问题……我可以这样做:
A[] myArrayofAtypes;
但是,假设我创建了这个 C 类型数组的第一个元素。如果 C 类型在其类定义中定义了一个仅存在于 C 类的类定义中的变量……我如何从数组中访问该变量?我不能这样做A[0].MyVariableGetter
,因为基类 A 中不存在该变量。
有什么建议么?