如何在Java中利用建造者模式实现办理手机套餐功能

  介绍

本篇文章给大家分享的是有关如何在Java中利用建造者模式实现办理手机套餐功能,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

<强>一、模式定义

建造者简单理解就是造东西,只不过建造者模式建造的不是一个简单的东西,是一个比较复杂的东西。

<强>二、模式举例

<强> 1模式分析

我们借用顾客到手杌营业厅去办理手机套餐的例子说明这一模式
经过抽象分析后,我们得出下面信息
客户张三——终端需求
营业厅操作员——指导者(通知指导建造者生产什么样的手机套餐)
计算机——建造者(建造各种手机套餐)
手机套餐——产品

如何在Java中利用建造者模式实现办理手机套餐功能

<强> 2建造者模式静态建模

如何在Java中利用建造者模式实现办理手机套餐功能

<强> 3代码示例

3.1创建产品——手机套餐

package  com.demo.buider.model;   public  class  MobilePackage   {//才能,话费   private 才能;float 资金;//才能,短的信   private 才能;int  shortInfo;//才能,彩玲   private 才能;String 音乐;   public 才能;float  getMoney ()   {才能   ,,,return 资金;   ,,}   public 才能;void  setMoney (float 金钱)   {才能   ,,,this.money =,钱;   ,,}   public 才能;int  getShortInfo ()   {才能   ,,,return  shortInfo;   ,,}   public 才能;void  setShortInfo (int  shortInfo)   {才能   ,,,this.shortInfo =, shortInfo;   ,,}   public 才能;String  getMusic ()   {才能   ,,,return 音乐;   ,,}   public 才能;void  setMusic (String 音乐)   {才能   ,,,this.music =,音乐;   ,,}   }

3.2建造者接口

package  com.demo.buider.itf;   import  com.demo.buider.model.MobilePackage;/* *   ,*手机套餐建设者   ,*   ,* @author   ,*   ,*/public  interface  IMobileBuilder   {//,才能建造手机套餐的话费   public 才能;void  buildMoney ();//,才能建造手机套餐的短的信   public 才能;void  buildShortInfo ();//,才能建造手机套餐的彩玲   public 才能;void  buildMusic ();//,才能返回建造的手机套餐对象   public 才能;MobilePackage  getMobilePackage ();   }

3.3建立具体建造者

具体的建造者1

package  com.demo.buider.itf;   import  com.demo.buider.base.AbstractBasePackage;   import  com.demo.buider.model.MobilePackage;/* *   ,*套餐1   ,*   ,* @author  maofw   ,*   ,*/public  class  MobileBuilderImpl1  extends  AbstractBasePackage  implements  IMobileBuilder   {//,才能建造手机套餐的话费   public 才能;void  buildMoney ()   {才能   ,,,this.mobilePackage.setMoney(20.0度);   ,,}//,才能建造手机套餐的彩玲   public 才能;void  buildMusic ()   {才能   ,,,this.mobilePackage.setMusic(“天使“);   ,,}//,才能建造手机套餐的短的信   public 才能;void  buildShortInfo ()   {才能   ,,,this.mobilePackage.setShortInfo (400);   ,,}//,才能返回建造的手机套餐对象   public 才能;MobilePackage  getMobilePackage ()   {才能   ,,,return  this.mobilePackage;   ,,}   }

具体的建造者2

package  com.demo.buider.itf;   import  com.demo.buider.base.AbstractBasePackage;   import  com.demo.buider.model.MobilePackage;/* *   ,*套餐2   ,*   ,* @author  maofw   ,*   ,*/public  class  MobileBuilderImpl2  extends  AbstractBasePackage  implements  IMobileBuilder   {//,才能建造手机套餐的话费   public 才能;void  buildMoney ()   {才能   ,,,this.mobilePackage.setMoney(30.0度);   ,,}//,才能建造手机套餐的彩玲   public 才能;void  buildMusic ()   {才能   ,,,this.mobilePackage.setMusic(“大海“);   ,,}//,才能建造手机套餐的短的信   public 才能;void  buildShortInfo ()   {才能   ,,,this.mobilePackage.setShortInfo (600);   ,,}//,才能返回建造的手机套餐对象   public 才能;MobilePackage  getMobilePackage ()   {才能   ,,,return  this.mobilePackage;   ,,}   }

如何在Java中利用建造者模式实现办理手机套餐功能