【问题标题】:Java OOP design: what patterns can be used to design a hierarchy in which tasks/methods can be delegated between different instances of objects? [closed]Java OOP 设计:可以使用哪些模式来设计可以在不同对象实例之间委托任务/方法的层次结构? [关闭]
【发布时间】:2015-06-09 01:47:26
【问题描述】:

例如,如果我有一个人类,但一个人的每个实例都可以有 0 个或多个职位或工作 - 它们具有特定的能力和职责 - 他/她可以随意切换。

【问题讨论】:

  • 你最好问一个更具体的问题,然后用一个具体的答案来回答。另外,你的问题也不清楚。
  • 这个描述让我想到了很多模式。战略、观察员、访客、指挥……一方面,一个人可以同时担任多个职位吗?我们是否希望能够说“做好所有的工作”。
  • 是的,我会在里面编辑它

标签: java oop inheritance delegation


【解决方案1】:

我认为您可以使用Strategy Pattern 完成此操作。基本上,策略是他们的工作,但我可能会做一个WorkerEmployee 类;并非所有Persons 都是工人。

如果Person 包含应用策略来完成任务或职责的概念,他们可以在运行时(运行时)切换任务或职责。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多