【发布时间】:2013-01-12 14:00:39
【问题描述】:
就我个人而言,我从来没有理解工厂类的概念,因为直接实例化一个 Object 似乎更有用。我的问题很简单,在什么情况下使用工厂类模式是最佳选择,出于什么原因,一个好的工厂类是什么样的?
【问题讨论】:
-
当您不确切知道将返回什么类时,工厂方法最有用。例如,您可以根据访问的资源是本地资源还是远程资源来获取不同的类。另一种情况是返回的对象是“复合”。例如,我希望 Java 有一些“给我一个文件访问权限”的方法,这些方法可以将文件、流和缓冲区粘在一起,令人作呕,而不是我不得不把这些东西放在一起。