有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何在服务类和util类之间拆分应用程序函数?

我们使用spring框架,遇到了如下情况:

我们有一些服务类,比如CatalogManager、CourseManager,我们现在希望它们有一些函数,比如parseXML

我的问题是,我是否应该将这些方法放入每个单独的类中,例如CatalogManager或CourseManager中的parseXML方法?或者我们应该创建一个XMLUtil类,并在此类中创建parseCatalogXMl和parseCourseXML之类的方法

谢谢


共 (1) 个答案

  1. # 1 楼答案

    这取决于parseXML()将要做什么

    案例1:如果所有的parseXML()方法都将执行相同的操作,那么您应该拥有另一个具有一个parseXML()方法的类。为什么?它避免了不必要的重复,更易于更新,并且更易于扩展

    案例2:如果所有的parseXML()方法都不同(主要不是几行),那么在每个类中实现该方法会更容易。为什么?试图将多种不同的方法结合在一起既复杂又丑陋

    案例3:创建具有parseXML()方法的CatalogManagerCourseManager的超类。然后,如果子类需要用这个方法做一些不同的事情,它可以简单地重写它

    您应该使用哪一种最终的解决方案是最可取的,因为它结合了前两种方法的优点,使您的代码保持简单、可扩展、可读和可更新。但如果前两种情况中的一种严格适用,则应改用这两种情况

    您的类结构如下所示:

    Manager          // the super class, this implements parseXML().
      CatalogManager // a sub class, overriding parseXML() only if it needs to.
      CourseManager  // same as above.
    XMLUtil          // this class is only necessary in case 1.
    

    这最终是你的决定。没有一个案例比任何其他案例都快,只要选择一个你想要的