java - java中的辅助对象是什么?

标签 java

我很少遇到称为辅助对象的情况...谁能详细说明这些辅助对象是什么以及我们为什么需要它们?

最佳答案

一些类共有的一些操作可以移动到辅助类,然后通过对象组合来使用:

public class OrderService {
    private PriceHelper priceHelper = new PriceHelper();

    public double calculateOrderPrice(order) {
        double price = 0;
        for (Item item : order.getItems()) {
            double += priceHelper.calculatePrice(item.getProduct());
        }
    }
}

public class ProductService {
    private PriceHelper priceHelper = new PriceHelper();

    public double getProductPrice(Product product) {
        return priceHelper.calculatePrice(product);
    }
}

可以通过多种方式使用辅助类:

  • 直接实例化它们(如上)
  • 通过依赖注入(inject)
  • 通过将它们的方法设置为 static 并以静态方式访问它们,例如 IOUtils.closeQuietly(inputStream) 关闭 InputStream 而不抛出异常.
  • 至少我的约定是只使用静态方法而不是依赖项XUtils来命名类,而类对象又具有依赖项/需要由DI容器管理XHelper

(上面的示例只是一个示例 - 不应根据领域驱动设计进行讨论)

关于java - java中的辅助对象是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2135775/

相关文章:

java - 哪种编程语言用于计算密集型交易组合模拟?

java - 面向对象访问说明符背后的推理

java - 如何在Java中将一个字符串分割为2个字符串

java - 无法从 py4j 中的 Python 启动网关

java - 无法加载 AWS Ivona 属性文件 Java

java - 使用 java 或 unix 命令在文件中进行多行搜索

java - 如何通过在原始列表末尾按顺序重复它们来进行复制以使列表大小加倍

java - 我需要使这段代码正常工作,但无法找出问题所在。这是一个 System.out.format() 问题

java - java中比较二维数组并写入excel中的单个单元格

java - HttpUrlConnection.setChunkedStreamingMode 的效果