首页 > 代码库 > 工厂模式
工厂模式
1.普通工厂模式
package CommonFactory; public class Test { public static void main(String[] args) { VehicleFactory factory = new CarFactory(); Moveable M = factory.create(); M.run(); } }
这样,只要改变new CarFactory();一条语句,程序就会有不同的行为,普通工厂主要在产品的维度上进行扩展。
2.抽象工厂模式
普通工厂模式一次只能生产一件物品,抽象工厂模式一次生产一套物品。
public class Test { public static void main(String[] args) { //DefaultFactory factory = new DefaultFactory(); AbstractFactory factory = new DefaultFactory(); Vehicle vechile = factory.createVehicle(); vechile.run(); Food food = factory.createFood(); food.printName(); } }
同样只要修改new DefaultFactory();一行代码就可以使整个程序的行为发生变化;但抽象工厂的缺点是“牵一发动全身”,要是想在工厂中添加一个物品,则所有继承自AbstractFactory的类都需要修改。
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。