4
而不是有一個公共的虛擬方法,你有一個公共密封的方法,調用一個受保護的虛擬方法。事情是這樣的:這種繼承設計模式的名稱是什麼?
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但我找不到問題。
這被稱爲[「模板方法模式」](https://en.wikipedia.org/wiki/Template_method_pattern) –