相关疑难解决方法(0)

Java实用工具类与服务

Java在实用程序类(具有静态方法的类)和Service类(具有提供"服务"的公共方法的类)之间的区别是什么.例如,可以认为加密对象(提供加密,解密,散列或获取salt值的方法)是服务提供者,但许多人将此功能组合到具有静态方法的Utility类中,如CryptoUtil.encrypt(.. ).我试图弄清楚哪种方式更好地"设计".思考?

java service static utility

36
推荐指数
3
解决办法
3万
查看次数

Java抽象类或静态实用类设计选择

我正在实施一些策略(策略模式),这些策略有一些共同的行为,并且在常见操作应该存在的地方尚未确定.

  • 假设我有1个上下文和3个策略,策略中使用的一些操作是共享的,有些仅需要2个其他操作,只需要1个策略.
  • 没有成员级别的状态共享,因此唯一的操作实际上是无状态的.
  • 操作的目的是支持将状态格式化为文件,例如视图助手.

选项1:创建一个AbstractStrategy类

  • 我正在使用Java,因此将来会立即使用此功能.
  • 继承倾向于导致.在山脊结构中.
  • 运营将是最终的.

选项2:创建一个Util类的静态助手

  • 灵活,但由于某种原因感觉像代码味道.
  • 没有山脊.

任何建议或偏好?

请注意,我正在处理的级别是策略级别,而不是上下文级别(请参阅维基百科链接).

java oop design-patterns

9
推荐指数
1
解决办法
6827
查看次数

标签 统计

java ×2

design-patterns ×1

oop ×1

service ×1

static ×1

utility ×1