为什么Struts中的ActionSupport是一个类而不是一个接口?

时间:2012-10-23 18:35:13

标签: java struts2 struts

接口为Java开发人员提供了比具体类更多的灵活性。我是Struts框架的新手,我对Struts开发人员让ActionSupport成为一个类的决定感到困惑。在我看来,它应该是一个界面。他们为什么这样做?

3 个答案:

答案 0 :(得分:3)

您应该阅读文档here

  

为最常见的操作提供默认实现。有关更多详细信息,请参阅此类实现的所有接口的文档。

它实际上是界面 Action的默认实现。由于它是一个实现,它不能是一个接口,因为接口是100%抽象的。

答案 1 :(得分:0)

来自struts文档:

  

类ActionSupport为最常见的操作提供默认实现。有关更多详细信息,请参阅此类实现的所有接口的文档。

http://struts.apache.org/2.1.2/struts2-core/apidocs/com/opensymphony/xwork2/ActionSupport.html

答案 2 :(得分:0)

这完全是一个架构决策。 ActionSupport在用户自己的操作中为用户提供了非常有用的资源,因此无需在API内的其他位置公开它。用户打算为自己的行为扩展ActionSupport以利用其资源。 Action接口服从用户实现execute方法,我们知道这不是必需的。

动作是简单的POJO,它们不需要扩展或实现某些功能。