今晚看代码的时候看到工厂类中方法和参数都使用static修饰,于是很好奇的想为什么一定要使用静态方法。百度了一下,发现百度了一堆垃圾,根本没有找到自己想要的答案。后来去Stack Overflow,果然找到了相关的问题。因为是英文的,所以翻译过来并综合整理了一下。 为什么要在工厂模式中使用静态方法 工厂模式是一种封装对象创建的方法。如果不使用工厂模式,你需要直接使用构造方法来创建对象: Foo x = new Foo() 使用工厂模式,可以取而代之的调用工厂方法: Foo x = Foo.create() 工厂类的构造方法被标记为private,所以构造方法除了