zvo*_*kov 8 language-agnostic oop design-patterns
发现自己试图找到这个设计模式的官方定义的链接,我相信我在Go4中看到但似乎无法在任何地方找到它.
class Processor{
ProcessParameter(AbstractParameter x){
x.Process(this);
}
ProcessParameter(ParameterA x){
... A-specific logic...
}
ProcessParameter(ParameterB x){
... B-specific logic...
}
}
abstract class AbstractParameter{
abstract void Process(Processor p);
}
class ParameterA : AbstractParameter{
override void Process(Processor p){
p.ProcessParameter(this);
}
}
class ParameterB : AbstractParameter{
override void Process(Processor p){
p.ProcessParameter(this);
}
}
Run Code Online (Sandbox Code Playgroud)