首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >设计模式-- dispatcher

设计模式-- dispatcher
EN

Stack Overflow用户
提问于 2011-06-08 14:26:47
回答 1查看 840关注 0票数 1

我有一个类似如下的用例:

假设我有一个enumType Foo (可能的值A、B、C)。假设我有

代码语言:javascript
复制
Class Bar{
 List<Foo> foos; // list of Foo objects where each object can have 1 of 3 possible values
 long id;
 String name;
 String num;
 ...
}

我的客户会在Dispatcher类中调用一个方法"dispatch“,它接受"Bar”。

现在,对于每个(Foo foo : foos),它将实际的分派委托给特定的类型(即,我希望为A、B和C类型的消息提供单独的处理程序)。

其次,必须为A、B和C创建不同的分派消息。根据foo的值,我们从模板中提取消息并插入"name“、"num”(从Bar获得)。

这个设计有没有什么特别的设计模式?我应该如何设计这样的系统。感谢您对现有模式或最佳实践的讨论或指导。

EN

回答 1

Stack Overflow用户

发布于 2011-06-08 14:43:59

使用多态性。

代码语言:javascript
复制
enum Foo {
    VALUE1 {
        @Override public void someMethod() {...}
    },
    VALUE2 {
        @Override public void someMethod() {...}
    },
    VALUE 3 {
        @Override public void someMethod() {...}
    };

    public abstract void someMethod();

}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6274960

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档