外观
它可以忽略复杂的创建过程,将创建与使用分开, 调用者可以不需要关心内部复杂的创建过程,只需要传入必要的参数即可
比如 Java 代码中,Point 表示平面的坐标,但是坐标可以用平面直角坐标系或者极坐标来表示与此同时,它们两个传入参数的类型都是 double,这样使用构造方法就比较麻烦了,就要使用工厂模式来解决了 (不同业务传入的参数类型与个数是一致的)
比如 Java 代码中,Point 表示平面的坐标,但是坐标可以用平面直角坐标系或者极坐标来表示
Java
Point
与此同时,它们两个传入参数的类型都是 double,这样使用构造方法就比较麻烦了,就要使用工厂模式来解决了 (不同业务传入的参数类型与个数是一致的)
double
代码链接