【发布时间】:2015-07-22 20:17:48
【问题描述】:
在简化版本中,我有以下内容:
abstract class Days
{
private readonly int _amount;
protected virtual void UpdateAmount()
{
Proccess();
}
protected virtual void Process()
{
_amount += 1;
}
}
问题是我需要创建一个继承自 Days 的类,我需要在其中更改 UpdateAmounts() 的功能,但仍使用 Process() 中的相同功能。由于 Process 使用私有字段,是否有办法做到这一点而不仅仅是将 Process() 中的代码复制并粘贴到我的子类中?它不会让我使用 base.Process() 因为该方法引用了一个私有字段。
【问题讨论】:
-
“它不会让我使用 base.Process()”——什么是阻止你使用受保护方法的“它”?您能否发布您正在尝试实现的目标以及它如何失败的示例(您已经提到
base.Process()否则应该与stackoverflow.com/questions/3747711/… 等一些现有问题重复)。