我需要一个编程模式,但我不知道它会是什么。我什至不确定我想要的是否可能。可以说我有一个Class A
和 10 类继承自A
. 我想要的是调用Method Print()
在每个继承类上以不同方式实现的相同方法,但它们都需要重复相同的Class A
.
Class A
{
public virtual void Print()
{
}
protected void StartingProcedure()
{
/// something
}
protected void EndingProcedure()
{
/// something
}
}
Class A_1 : A
{
public override void Print()
{
StartingProcedure();
/// class specific print operation
EndingProcedure();
}
}
Class A_2 : A
{
public override void Print()
{
StartingProcedure();
/// class specific print operation
EndingProcedure();
}
}
如您所见,我不想继续写StartingProcedure();
每个被覆盖的Print
方法。我想自动化该过程,当我从A
不想介意开始和结束过程中继承一个新类时,我只想编写特定于类的打印操作。是否有任何模式可以为我提供这种类行为?
顺便说一句,我使用 C#