工厂模式

来源:互联网 发布:java反编译 编辑:程序博客网 时间:2024/06/05 03:27

                                                                                                             工厂模式

   

    在设计模式中,一个类代表另一个类的功能,这种类型的模式称为结构性模式。在代理模式中,我们创建具有对象的对象,以便向外界提供功能接口。

 我们一般会在什么地方会用到呢?我们明确地计划不同条件下创建爱不同实例时而实现的代码的关键就创建过程在其子类执行

   根据UML类图来实现这些代码:


  

 定义接口public interface Shape { void draw();}public class Circle implements Shape{public void draw(){System.out.println("Inside Circle::draw() method.");}}public class Rectangle implements Shape{@Overridepublic void draw() {// TODO Auto-generated method stubSystem.out.println("Inside Rectangele::draw() method.");}}public class Square implements Shape{@Overridepublic void draw() {// TODO Auto-generated method stubSystem.out.println("Inside Square::draw() method.");}}public class ShapeFactory {  public Shape getShape(String shapeType)  {    if(shapeType == null)   {     return null;   }   if(shapeType.equalsIgnoreCase("CIRCLE")){   return new Circle();   }   else if(shapeType.equalsIgnoreCase("RECTANGLE")){   return new Rectangle();   }    else if(shapeType.equalsIgnoreCase("SQUARE")){   return new Square();   }    return null;    }}public class FactoryPatterDemo {   public static void main(String[] args)   {   ShapeFactory  shapeFactory = new ShapeFactory();      //  获取 Circle   Shape shape1 = ((ShapeFactory) shapeFactory).getShape("CIRCLE");  shape1.draw();    Shape shape2 = ((ShapeFactory) shapeFactory).getShape("RECTANGLE");  shape2.draw();    Shape shape3 = ((ShapeFactory) shapeFactory).getShape("SQUARE");  shape3.draw();       }}

   

  运行结果:

  






 

1 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 手机型号不支持微信运动怎么办 手腕向下压会疼怎么办 手腕韧带拉伤怎么办恢复快 华为手机用车载充电慢怎么办 华为麦芒6充电慢怎么办 oppo手机压弯了怎么办 麦芒5电池不耐用怎么办 华为7x照相模糊怎么办 华为麦芒6照相虚怎么办 荣耀8gps信号弱怎么办 华为麦芒4手机卡顿怎么办 华为麦芒4玩游戏卡怎么办 sim卡换卡通讯录丢了怎么办 换sim卡通讯录怎么办 麦芒4开不了机怎么办 麦芒5开不了机怎么办 麦芒6针丢了怎么办 麦芒6扬声器坏了怎么办 华为手机2s太卡怎么办 华为麦芒6网速慢怎么办 华为麦芒5太卡怎么办 小米note3拍照反应慢怎么办 华为刷机后还要账号密码怎么办 刷机后忘记华为账号和密码怎么办 荣耀7x耗电快怎么办 小米2s死机后怎么办? 电信合约卡不想用了怎么办 vivo合约机掉了怎么办 华为合约机丢了怎么办 两年合约机掉了怎么办 电信合约机丢了怎么办 s8合约机坏了怎么办 合约机的卡掉了怎么办 移动合约机屏幕碎了怎么办 5s用不了电信卡怎么办 vivo手机4g信号差怎么办 电信dns辅服务器未响应怎么办 笔记本wifi下载速度慢怎么办 苹果wifi下载速度慢怎么办 小米手机wifi下载速度慢怎么办 苹果8plus上网慢怎么办