当前位置: 首页 > news >正文 flash 网站h5商城网站怎么做的 news 2025/10/26 13:05:33 flash 网站,h5商城网站怎么做的,网站设计制作合同,全筑装饰官网工厂模式属于创建型模式#xff0c;也被称为多态工厂模式#xff0c;它在创建对象时提供了一种封装机制#xff0c;将实际创建对象的代码与使用代码分离#xff0c;有子类决定要实例化的产品是哪一个#xff0c;把产品的实例化推迟到子类。 使用场景 重复代码 : 创建对象…工厂模式属于创建型模式也被称为多态工厂模式它在创建对象时提供了一种封装机制将实际创建对象的代码与使用代码分离有子类决定要实例化的产品是哪一个把产品的实例化推迟到子类。 使用场景 重复代码 : 创建对象 需要使用 大量重复的代码 ;不关心创建过程 : 客户端 不依赖 产品类 , 不关心 实例 如何被创建 , 实现等细节 ;创建对象 : 一个类 通过其 子类 来 指定 创建哪个对象 ; 工厂方法模式的角色 抽象产品Product是定义产品的接口是工厂方法模式创建对象的父类也就是产品对象的公共父类。产品类ConcreteProduct是实现了抽象产品所声明的接口工厂方法模式所创建的每一个对象都是某个具体产品角色的实例。抽象工厂Factory是工厂方法模式的核心所有创建对象的工厂类都必须继承该接口。具体工厂ConcreteFactory是抽象工厂的子类实现了抽象工厂中定义的函数工厂方法模式所创建的每一个对象都是某个具体产品类的实例。 结构图 优缺点 优点 不关心创建细节 : 用户 只需要 关心 所需产品 对应的工厂 , 无需关心创建细节 ;符合开闭原则 : 加入 新产品 , 符合开闭原则 , 提高可扩展性 ; 缺点 增加复杂性类的个数容易过多增加系统复杂度在添加新产品时除了编写 新的产品类之外 还要 编写该产品类对应的工厂类。增加难度增加了系统抽象性和理解难度。工厂方法本身利用了抽象该模式中会 引入抽象层 如果要动态创建产品类还要 引入反射技术。 应用实例 创建一个 Shape 接口和实现 Shape 接口的实体类。下一步是定义工厂类 ShapeFactory。 FactoryPatternDemo 类使用 ShapeFactory 来获取 Shape 对象。它将向 ShapeFactory 传递信息CIRCLE / RECTANGLE / SQUARE以便获取它所需对象的类型。 抽象产品 public interface Shape {void draw(); } 实现接口的产品类 public class Rectangle implements Shape {Overridepublic void draw() {System.out.println(Inside Rectangle::draw() method.);} }public class Square implements Shape {Overridepublic void draw() {System.out.println(Inside Square::draw() method.);} }public class Circle implements Shape {Overridepublic void draw() {System.out.println(Inside Circle::draw() method.);} } 抽象工厂 public interface Factory {public Shape getShape(String shapeType); } 具体工厂 public class ShapeFactory implements Factory {//使用 getShape 方法获取形状类型的对象Overridepublic 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 FactoryPatternDemo {public static void main(String[] args) {ShapeFactory shapeFactory new ShapeFactory();//获取 Circle 的对象并调用它的 draw 方法Shape shape1 shapeFactory.getShape(CIRCLE);//调用 Circle 的 draw 方法shape1.draw();//获取 Rectangle 的对象并调用它的 draw 方法Shape shape2 shapeFactory.getShape(RECTANGLE);//调用 Rectangle 的 draw 方法shape2.draw();//获取 Square 的对象并调用它的 draw 方法Shape shape3 shapeFactory.getShape(SQUARE);//调用 Square 的 draw 方法shape3.draw();} } 运行结果 Inside Circle::draw() method. Inside Rectangle::draw() method. Inside Square::draw() method. 文章转载自: http://www.morning.rhmk.cn.gov.cn.rhmk.cn http://www.morning.lffrh.cn.gov.cn.lffrh.cn http://www.morning.lqlfj.cn.gov.cn.lqlfj.cn http://www.morning.ynjhk.cn.gov.cn.ynjhk.cn http://www.morning.huarma.com.gov.cn.huarma.com http://www.morning.qkxnw.cn.gov.cn.qkxnw.cn http://www.morning.hqjtp.cn.gov.cn.hqjtp.cn http://www.morning.fmswb.cn.gov.cn.fmswb.cn http://www.morning.qnjcx.cn.gov.cn.qnjcx.cn http://www.morning.gyjld.cn.gov.cn.gyjld.cn http://www.morning.lclpj.cn.gov.cn.lclpj.cn http://www.morning.qnbck.cn.gov.cn.qnbck.cn http://www.morning.mjtft.cn.gov.cn.mjtft.cn http://www.morning.gbrps.cn.gov.cn.gbrps.cn http://www.morning.dhyqg.cn.gov.cn.dhyqg.cn http://www.morning.ey3h2d.cn.gov.cn.ey3h2d.cn http://www.morning.crrjg.cn.gov.cn.crrjg.cn http://www.morning.mhlsx.cn.gov.cn.mhlsx.cn http://www.morning.bcngs.cn.gov.cn.bcngs.cn http://www.morning.jfsbs.cn.gov.cn.jfsbs.cn http://www.morning.xcyzy.cn.gov.cn.xcyzy.cn http://www.morning.zgdnz.cn.gov.cn.zgdnz.cn http://www.morning.sfhjx.cn.gov.cn.sfhjx.cn http://www.morning.srky.cn.gov.cn.srky.cn http://www.morning.tpnxr.cn.gov.cn.tpnxr.cn http://www.morning.zqwp.cn.gov.cn.zqwp.cn http://www.morning.lkmks.cn.gov.cn.lkmks.cn http://www.morning.tdldh.cn.gov.cn.tdldh.cn http://www.morning.xsfny.cn.gov.cn.xsfny.cn http://www.morning.qxrct.cn.gov.cn.qxrct.cn http://www.morning.mooncore.cn.gov.cn.mooncore.cn http://www.morning.dwrbn.cn.gov.cn.dwrbn.cn http://www.morning.bprsd.cn.gov.cn.bprsd.cn http://www.morning.hgscb.cn.gov.cn.hgscb.cn http://www.morning.pccqr.cn.gov.cn.pccqr.cn http://www.morning.wnkqt.cn.gov.cn.wnkqt.cn http://www.morning.sqfnx.cn.gov.cn.sqfnx.cn http://www.morning.nqlcj.cn.gov.cn.nqlcj.cn http://www.morning.ftync.cn.gov.cn.ftync.cn http://www.morning.rpjyl.cn.gov.cn.rpjyl.cn http://www.morning.zcqbx.cn.gov.cn.zcqbx.cn http://www.morning.svtxeu.com.gov.cn.svtxeu.com http://www.morning.sqmbb.cn.gov.cn.sqmbb.cn http://www.morning.fssjw.cn.gov.cn.fssjw.cn http://www.morning.dfndz.cn.gov.cn.dfndz.cn http://www.morning.kyflr.cn.gov.cn.kyflr.cn http://www.morning.fwwkr.cn.gov.cn.fwwkr.cn http://www.morning.i-bins.com.gov.cn.i-bins.com http://www.morning.jwgmx.cn.gov.cn.jwgmx.cn http://www.morning.ckwrn.cn.gov.cn.ckwrn.cn http://www.morning.grbp.cn.gov.cn.grbp.cn http://www.morning.rszt.cn.gov.cn.rszt.cn http://www.morning.htsrm.cn.gov.cn.htsrm.cn http://www.morning.wschl.cn.gov.cn.wschl.cn http://www.morning.wynnb.cn.gov.cn.wynnb.cn http://www.morning.tkgxg.cn.gov.cn.tkgxg.cn http://www.morning.fnlnp.cn.gov.cn.fnlnp.cn http://www.morning.qrcsb.cn.gov.cn.qrcsb.cn http://www.morning.sftrt.cn.gov.cn.sftrt.cn http://www.morning.mtmnk.cn.gov.cn.mtmnk.cn http://www.morning.kqbwr.cn.gov.cn.kqbwr.cn http://www.morning.tkcct.cn.gov.cn.tkcct.cn http://www.morning.fgkwh.cn.gov.cn.fgkwh.cn http://www.morning.yrnyz.cn.gov.cn.yrnyz.cn http://www.morning.gxqpm.cn.gov.cn.gxqpm.cn http://www.morning.tkhyk.cn.gov.cn.tkhyk.cn http://www.morning.rfxw.cn.gov.cn.rfxw.cn http://www.morning.grwgw.cn.gov.cn.grwgw.cn http://www.morning.cbnjt.cn.gov.cn.cbnjt.cn http://www.morning.bmsqq.cn.gov.cn.bmsqq.cn http://www.morning.kaakyy.com.gov.cn.kaakyy.com http://www.morning.hblkq.cn.gov.cn.hblkq.cn http://www.morning.dbnpz.cn.gov.cn.dbnpz.cn http://www.morning.wfzdh.cn.gov.cn.wfzdh.cn http://www.morning.qbfs.cn.gov.cn.qbfs.cn http://www.morning.kxsnp.cn.gov.cn.kxsnp.cn http://www.morning.gqfjb.cn.gov.cn.gqfjb.cn http://www.morning.xrsqb.cn.gov.cn.xrsqb.cn http://www.morning.rchsr.cn.gov.cn.rchsr.cn http://www.morning.lhgqc.cn.gov.cn.lhgqc.cn 查看全文 http://www.tj-hxxt.cn/news/251063.html 相关文章: 做中英双语切换的网站温州网站建设制作设计公司 网站文章做内链网站内容的排版布局 怎么用python做网站什么网站可以做简历模板 自助 建站网络营销与传统营销的区别 网站空间申请开通东莞桂城网站建设 网站建设客户案例百度知道问答 教研组网站的建设免费注册自己的网站 象客企业网站做优化排名开发运营一个app要多少钱 公司建设网站的通知书新浪体育世界杯 花桥网站建设公司成都网站平台建设 c 网站开发构想工信部企业网站认证 动易网站设计方案wordpress外国模板 如何用2级域名做网站python django做网页 辽源做网站公司seo应该怎么做 烤漆 东莞网站建设百度在线识图 创建网站要多少钱平台推广是什么 网站配色 原则wordpress可以拖动 ks免费刷粉网站推广房屋中介网站怎么做 wordpress做资源下载站口碑营销的前提及好处有哪些? 一站式服务宣传语我有域名怎么做网站 广西桂平建设局网站专业零基础网站建设教学 简单电商网站模板商会网站怎么做 网站如何做支付系统网站设计素材图片 济南市城市建设规划局官方网站怎么把asp网站改成php 网店设计与装修实训报告佛山百度seo排名 地方网站改版方案网站建设单位哪家好 做暧暖ox免费网站咸宁抖音seo收费标准 网站建设新闻稿系部网站建设中期检查总结 网站建设班级通讯录中文域名网站怎么发布信息 新城免费做网站湛江网站建设模板定位工厂