gpt4 book ai didi

java - 公共(public)静态工厂方法

转载 作者:IT老高 更新时间:2023-10-28 20:53:43 27 4
gpt4 key购买 nike

首先,如果这是一个非常愚蠢的问题,请原谅我,我只是在努力学习这门语言的核心。我正在阅读 Effective Java,第一章讨论的是静态工厂方法与构造函数。他们的优点和缺点。让我感到困惑的几件事是:

  1. 静态工厂方法返回的对象的类是非公开的 - 究竟是什么意思?
  2. 与构造函数不同,静态工厂方法不需要在每次调用时都创建一个新对象 - 这是怎么发生的?我调用工厂方法只是为了获取一个新对象,我们是否在工厂方法中检查对象是否已经存在?

谢谢。

最佳答案

class of an object returned by static factory method is nonpublic - what exactly does it mean?

这意味着静态工厂方法返回的对象的实际类可以是声明类型的子类,并且该子类不必是公共(public)的。这只是客户端代码不应该关心的另一个实现细节。

unlike constructors static factory methods are not required to create a new object each > time they are invoked - How does this happen? I am invoking factory method only to obtain a new object and do we put a check in factory method for checking if object already exists?

是的,这是可以做到的一种方式。但实际上,一切皆有可能。

关于java - 公共(public)静态工厂方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4079456/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com