这个继承设计模式的名称是什么?

时间:2016-03-01 09:59:02

标签: c# design-patterns

您可以使用公共密封方法调用受保护的虚拟方法,而不是使用公共虚方法。像这样:

public class Test {

    public void DoStuff(){
        // Do stuff here...
        ProtectedDoStuff();
        // Do more stuff...
    }

    protected virtual void ProtectedDoStuff(){
        // Do stuff...
    }
}

而不是:

public class Test {

    public virtual void DoStuff(){
        // Do stuff here...
        // Do a lot of stuff...
        // Do more stuff...
    }
}

public class Test2 : Test {

    public override void DoStuff(){
        // Do same stuff as base
        // Do different stuff
        // Do more stuff just like base
    }
}

如果需要一直需要,可以避免重新实现公共方法的所有功能。 我知道这已经在stackoverflow上被问过,但我找不到问题。

1 个答案:

答案 0 :(得分:5)

这是模板方法模式。来自Wikipedia

  

模板方法模式是一种行为设计模式,它定义了一种方法中算法的程序骨架,称为模板方法,它将一些步骤推迟到子类。它允许人们在不改变算法结构的情况下重新定义算法的某些步骤。