介绍
本篇文章给大家分享的是有关在JAVA项目中实现建造者模式的原理是什么,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
<强>建造者模式:强>将复杂对象的构造与它的实现相分离,让相同的构建过程可以创建不同的对象。
<>强适用场合:强>
复杂对象的算法应该独立于该对象的组成部分或当构造过程允许被构造不同的对象时。
<强>组成角色:强>
1创建者(Builder)接口:为创建一个对象的对应部件所指定抽象接口。
2具体创建者(ConcreteBuilder):实现Builder的接口以构造对象的各个部件。
3具体创建者管理对象(导演):使用Builder接口的对象。
4复杂产品对象(产品):被构造的复杂对象。
/* * ,*生产汽车:创建者Builder接口 ,* @description: ,* @date 2016 - 1 - 21,下午1:15:39 ,*/public interface  CarBuilder { void 才能carRoof();//生产车顶 void 才能carBottom();//生产车底盘 void 才能carWheel();//生产车轮 Car 才能buildCar (); }
/* * ,*具体创建对象ConcreteBuilder:白色汽车 ,* @description: ,* @date 2016 - 1 - 21,下午1:16:22 ,*/public class  WhiteCar implements CarBuilder  { Car 才能;汽车; public 才能;WhiteCar (), { ,,,car =, new 汽车(); ,,} @Override才能 public 才能;void  carRoof (), { ,,,car.setRoof(“制造白色汽车—车顶“); ,,} @Override才能 public 才能;void  carBottom (), { ,,,car.setBottom(“制造白色汽车—车底“); ,,} @Override才能 public 才能;void  carWheel (), { ,,,car.setWheel(“制造白色汽车—车轮“); ,,} @Override才能 public 才能;Car  buildCar (), { ,,,//,TODO Auto-generated method 存根 ,,,return 汽车; ,,} }
/* * ,*具体创建者管理对象(主任),建造者 ,* @description: ,* @author ldm ,* @date 2016 - 1 - 21,下午1:17:12 ,*/public class  CarDirector { public 才能;Car  constructPerson (CarBuilder carBuilder), { ,,,carBuilder.carRoof (); ,,,carBuilder.carBottom (); ,,,carBuilder.carWheel (); ,,,return carBuilder.buildCar (); ,,} }
/* * ,*最终生产的& # 39;复杂产品& # 39;对象 ,* @description: ,* @date 2016 - 1 - 21,下午1:22:28 ,*/public class  Car { private 才能String 屋顶;//,车顶 private 才能String 底部;//,车底 private 才能String 砂轮;//,车轮 public 才能;String  getRoof (), { ,,,return 屋顶; ,,} public 才能;void  setRoof (String 屋顶),{ ,,,this.roof =,屋顶; ,,} public 才能;String  getBottom (), { ,,,return 底部; ,,} public 才能;void  setBottom (String 底部),{ ,,,this.bottom =,底部; ,,} public 才能;String  getWheel (), { ,,,return 砂轮; ,,} public 才能;void  setWheel (String 轮),{ ,,,this.wheel =,轮; ,,} }
测试代码:
public class Test { public 才能;static  void main (String [], args), { ,,,CarDirector CarDirector =, new CarDirector (); ,,,Car Car =, carDirector.constructPerson (new WhiteCar ()); ,,,System.out.println (car.getRoof ()); ,,,System.out.println (car.getBottom ()); ,,,System.out.println (car.getWheel ()); ,,,System.out.println(“——整个车子就完成了!——“); ,,} }
打印结果:
制造白色汽车-车顶 制造白色汽车-车底 制造白色汽车-车轮 ——整个车子就完成了! - - - - - -
以上就是在JAVA项目中实现建造者模式的原理是什么,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注行业资讯频道。