【问题标题】:Factory design pattern implementation in rt.jarrt.jar 中的工厂设计模式实现
【发布时间】:2014-03-19 12:50:40
【问题描述】:

我正在阅读工厂设计模式,并在其中一个链接上阅读了以下提到的事实。

{ 与各种不可变类一起使用的工厂模式,例如布尔值。 Boolean.valueOf() }

有了这个背景,有人能解释一下它是如何在布尔和其他不可变类中实现的吗?抱歉,如果我在这里遗漏了一件愚蠢的事情。

问候塔伦

【问题讨论】:

  • 要查看如何您可以查看源代码。

标签: java factory


【解决方案1】:

如果您看到以下两种方法:

public static Boolean valueOf(boolean b) {
    return (b ? TRUE : FALSE);
}

public static Boolean valueOf(String s) {
    return toBoolean(s) ? TRUE : FALSE;
}

这些是 Boolean 类的静态方法,并根据提供的参数 return Boolean 类型的对象。

因此,您不必创建 Boolean 对象,而是 Boolean 类本身会为您创建/返回(已创建)对象。因此工厂为您服务。

【讨论】:

    【解决方案2】:

    它不会返回new Boolean(),而是检查参数并返回现有Boolean 对象之一,Boolean.TRUEBoolean.FALSE

    【讨论】:

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