为什么要使用工厂而不是“新工厂”?

佩图尔·英吉·埃格森

我正在阅读《EMF:Eclipse建模框架》一书,其中指出:

EMF编程模型强烈鼓励但不要求使用工厂来创建对象。而不是简单地使用new运算符来创建[对象] ...

为什么鼓励使用工厂new呢?

您的答案不必特定于EMF,只要它与Java有关即可。

叶夫根尼(Evgeniy Dorofeev)

您可以阅读有效的Java项目1:考虑静态工厂方法而不是构造函数。它详细描述了使用工厂方法的优点:

  • 静态工厂方法的一个优点是,与构造函数不同,它们具有名称

  • 静态工厂方法的第二个优点是,与构造函数不同,它们不需要在每次调用时都创建一个新对象。

  • 静态工厂方法的第三个优点是,与构造函数不同,它们可以返回其返回类型的任何子类型的对象。

  • 静态工厂方法的第四个优点是它们减少了创建参数化类型实例的冗长性(自Java 7以来似乎已过时)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

什么是使用工厂方法模式的动机,而不是简单工厂

为什么Java Pattern类使用工厂方法而不是构造函数?

使用工厂模式的主要目的是什么?

为什么要使用工厂方法模式而不是简单工厂

为什么LocalDate,LocalTime和Stream对象使用工厂方法of()而不是构造函数?

使用工厂公开简单的API

当工厂可以做同样的事情时,为什么要使用$ rootScope在控制器之间共享数据?

使用工厂来解决依赖关系

如何使用工厂函数编写JavaScript

为什么在python中使用工厂方法?

使用工厂获取数据json

什么时候应该使用工厂方法模式?(而不是组成)

简单的依赖注入就足够了,为什么要使用工厂模式

如何使用工厂实例化接口

从地图结构构造新实例时,为什么要使用工厂?

对泛型使用工厂类

使用工厂打破ng级

使用工厂在AngularJS中显示数据

使用工厂抛出异常实例化

使用工厂功能提交?

如果使用工厂方法,为什么TypeToken无法捕获通用类型?

原则数据类型(使用工厂)

为什么它需要默认构造函数而不是直接使用我的工厂方法?

使用工厂创建控制器

为什么在这种情况下使用工厂构造函数

简单工厂 VS 工厂方法(为什么要使用工厂方法)

什么都用工厂?

为什么 Azure 数据工厂使用 AppendFile 而不是 PutBlob 将文件写入 Blob 存储容器?

为什么 Blazor 模板使用工厂来创建 HttpClient 实例