当前位置: 首页 > news >正文 网站前期推广wordpress 直播 视频 news 2025/10/25 11:42:28 网站前期推广,wordpress 直播 视频,amp 插件 wordpress,常州网站建设推广文章目录 创建型模式单例模式 -- 确保对象唯一性例子优化饿汉式懒汉式 优缺点使用场景 简单工厂模式例子#xff1a;优化优缺点适用场景 工厂方法模式 -- 多态工厂的实现例子优缺点优化适用场景 抽象工厂模式 -- 产品族的创建例子优缺点适用场景 总结 创建型模式 单例模式 –… 文章目录 创建型模式单例模式 -- 确保对象唯一性例子优化饿汉式懒汉式 优缺点使用场景 简单工厂模式例子优化优缺点适用场景 工厂方法模式 -- 多态工厂的实现例子优缺点优化适用场景 抽象工厂模式 -- 产品族的创建例子优缺点适用场景 总结 创建型模式 单例模式 – 确保对象唯一性 例子 用TaskManager类。通过以下三步进行重构 为了确保TaskManager实例的唯一性禁止外部直接new来创建对象。需将构造函数改为private类变成私有的了所以外部访问该类对象需要类内建TaskManager类型的私有静态成员变量tm。供外部访问增加一个公有的静态方法、外界去使用tm 去实例化。 [注意 该方法要public] 得到 单例模式有3个要点: 某个类只能有一个实例;它必须自行创建这个实例;它必须自行向整个系统提供这个实例。 上述代码在多线程时候会出现 创建多个实例。提供两种解决方式 优化 饿汉式 定义静态变量的时候实例化单例类 懒汉式 不自行实例化延时加载。 采取双标志 为了避免多个钱程同时调用getInstonce ( 方法可以使用关键守synchronized如果使用双重检查锁定来实现懒汉式单例类需要在静态成员变量instonce之前增加修饰符volatile被volatile修饰的成员变量可以确保多个线程都能够正确处理 优缺点 优点 提供了对唯一实例的受控访问可以严格控制客户怎么样访问它 缺点没有抽象层难以扩展 单例类职责过重一定程度违背单一职责原则 使用场景 客户调用类的单个实例只允许使用一个公共访问点。除了该公共访问点不能通过其他途径访问该实例。系统要求提供一个唯一的序列号生成器或贵源管理器或着需要考虑赉源消耗太大而只允许创建一个对象。 提示以下是本篇文章正文内容下面案例可供参考 简单工厂模式 例子 图表库举例 完整代码 Chart接口充当抽象产品类其子类HistogromChort、 PieChart和Linehart充当具体产品类Chart-Factory充当工厂类。 优化 每更换一个Chart对象都需要修改客户端代码中静态工方法的参数客户端代码将要重新编译。 可以将参数写到XML中代码中只需要读取配置文件字符。 优缺点 优点 (1) 工厂类包含必要的判断逻辑决定在什么时候创建哪一个产品类的实例。客户端仅仅“消费”产品。简单工厂模式实现了对象创建和使用的分离。 (2客户端无须知道所创建的具体产品类的类名只需要知道具体产品类所对应的参数即可。 (3通过引入配置文件可以在不修改任向客户端代码更换和增加新的具体产品类。 缺点 (1) 由于工厂类集中了所有产品的创建逻辑职责过重。 (2使用简单工厂模式势必会增加系统中类的个数引入了新的工丁厂类。 (3系统扩展困难。一旦添加新产品就不得不修改工厂逻辑。 适用场景 工厂类负责创建的对象比较少。由于创建的对象较少不会造成工厂方法中的业务逻辑太过复杂。客户端只知道传入工丁厂类的参数对于如同创建对象并不关心。 工厂方法模式 – 多态工厂的实现 简单工厂模式下存在 工厂类过于庞大包了大量的f…else…代码导致维护和测试难度增大。系统扩展不灵活如果增加新类型的日志记录器必须修改静态工厂方法的业务逻辑违反了开闭原则。 简单工厂模式只有一个工厂 需要知道每个产品创建细节 由此工厂方法产生 例子 图表库举例 ConcreteFactory 具体工厂 Factory 抽象工厂 ConcreteProduct 具体产品 与 具体工厂一一应对 Product 抽象产品 完整代码 优缺点 优点 用户只需要关心所需产品对应的工厂无须关心创建细节甚至无须知道具体产品类的类名。它能够让工厂可以自主确定创建同种产品对象而如同创建这个对象的细节则究全封装在具体工厂内部。加入新产品时无须修改抽象工厂和抽象产品提供的接口无须修改客户端也无须修改其他的具体工厂和具体产品而只要添加 缺点 在添加新产品时需要编写新的具体产品类而且还要提供与之对应的具体工厂类在一定程度上增加了系统的复杂度。考虑到系统的可扩展性需要引入抽象层在客户端代码中均使用抽象层进行定义增加了系统的抽象性和理解难度 优化 如同简单工厂一样引入XML配置文件进行优化 适用场景 客户端不知道其所需要的对象的类。在工厂方法模式中客户端不需要知道具体产品类的类名只需要知道所对应的工厂即可具体的产品对象由具体工厂类创建可将具体工厂类的类名存储在配置文件或数据库中。抽象工厂类通过其子类来指定创建哪个对象。在工厂方法模式中抽象工厂类只需要提供一个创建产品的接口而由其子类来确定具体要创建的对象利用面向对象的多态性和里氏代换原则 抽象工厂模式 – 产品族的创建 对于工厂方法增加新的功能时虽然不需要修改哦代码但是需要增加大量的类每个新增具体组件都要增加一个具体工厂。 对于具体工厂模式 具体工厂负责生产具体产品需要创建9个具体类 对于抽象工厂模式 可抽象为产品等级结构 电器工厂: 可生产电视机、电冰箱、空调可抽象为产品族 海尔工厂: 可生产海尔电视机、海尔电冰箱、海尔空调 需要创建三个工厂类即可 例子 结构图 AbstractFactory 抽象工厂 ConcreteFactory 具体工厂 AbstractProduct 抽象产品 ConcreteProduct 具体产品 抽象工厂中声明了多个工厂方法用于创建不同类型的产品 每个具体的工厂方法可以返回一个特定的产品对象 具体工厂内的所有产品构成了产品族 优缺点 优点 (1) 抽象工厂模式隔离了具体类的生成使得客户并不需要知道什么被创建。 (2能够保证客户端始终只使用同一个产品族中的对象。 (3增加新的产品族很方便无须修改已有系统符合开闭原则。 缺点 增加新的产品等级结构麻烦需要对原有系统进行较大的修改甚至需要修改抽象层代码这显然会带来较大的不便违背了开闭原则。 适用场景 (1)一个系统不应当依赖于产品类实例如同被创建、组合和表达的细节这对于所有类型的工厂模式都是很重要的用户无须关心对象的创建过程将对象的创建和使用解耦。 (2)系统中有多于一个的产品族而每次只使用其中某一个产品族。以通过配置文件等方式来使得用户可以动态改变产品族,也可以很方便地增加新的产品族。 (3).属于同一个产品族的产品将在一起使用,这一约束必须在系统的设讨中体现出来。同一个产品族中的产品可以是没有任向关系的对象 但是它们都具有一些共同的约束。例如同一操作系统下的按钮和文本柜按钮与文本框之间没有直接关系但都属于操作系统 总结 简单工厂: 唯一工厂类一个产品抽象类工厂类的创建方法依据入参判断并创建具体产品对象。 工厂方法: 多个工厂类一个产品抽象类利用多态创建不同的产品对象避免了大量的f-else判断。 抽象工厂: 多个工厂类多个产品抽象类产品子类分徂同一个工厂实现类创建同术中的不同产品减少了工厂子类的数量。 文章转载自: http://www.morning.yfrbn.cn.gov.cn.yfrbn.cn http://www.morning.slmbg.cn.gov.cn.slmbg.cn http://www.morning.gbyng.cn.gov.cn.gbyng.cn http://www.morning.fpngg.cn.gov.cn.fpngg.cn http://www.morning.dycbp.cn.gov.cn.dycbp.cn http://www.morning.yxlpj.cn.gov.cn.yxlpj.cn http://www.morning.sgmgz.cn.gov.cn.sgmgz.cn http://www.morning.wmdbn.cn.gov.cn.wmdbn.cn http://www.morning.lhqw.cn.gov.cn.lhqw.cn http://www.morning.yrbp.cn.gov.cn.yrbp.cn http://www.morning.mqbsm.cn.gov.cn.mqbsm.cn http://www.morning.jbxd.cn.gov.cn.jbxd.cn http://www.morning.nytqy.cn.gov.cn.nytqy.cn http://www.morning.dmrjx.cn.gov.cn.dmrjx.cn http://www.morning.qmnjn.cn.gov.cn.qmnjn.cn http://www.morning.dwrbn.cn.gov.cn.dwrbn.cn http://www.morning.ppqzb.cn.gov.cn.ppqzb.cn http://www.morning.smpmn.cn.gov.cn.smpmn.cn http://www.morning.080203.cn.gov.cn.080203.cn http://www.morning.srtw.cn.gov.cn.srtw.cn http://www.morning.fylsz.cn.gov.cn.fylsz.cn http://www.morning.lbzgt.cn.gov.cn.lbzgt.cn http://www.morning.mzrqj.cn.gov.cn.mzrqj.cn http://www.morning.djlxz.cn.gov.cn.djlxz.cn http://www.morning.dwyyf.cn.gov.cn.dwyyf.cn http://www.morning.kcnjz.cn.gov.cn.kcnjz.cn http://www.morning.gynkr.cn.gov.cn.gynkr.cn http://www.morning.flfdm.cn.gov.cn.flfdm.cn http://www.morning.rzscb.cn.gov.cn.rzscb.cn http://www.morning.kjnfs.cn.gov.cn.kjnfs.cn http://www.morning.rbgwj.cn.gov.cn.rbgwj.cn http://www.morning.fnfxp.cn.gov.cn.fnfxp.cn http://www.morning.rswfj.cn.gov.cn.rswfj.cn http://www.morning.ndpzm.cn.gov.cn.ndpzm.cn http://www.morning.ckrnq.cn.gov.cn.ckrnq.cn http://www.morning.cgtrz.cn.gov.cn.cgtrz.cn http://www.morning.lbrwm.cn.gov.cn.lbrwm.cn http://www.morning.xnnpy.cn.gov.cn.xnnpy.cn http://www.morning.zwwhq.cn.gov.cn.zwwhq.cn http://www.morning.wmfr.cn.gov.cn.wmfr.cn http://www.morning.gbljq.cn.gov.cn.gbljq.cn http://www.morning.rwmp.cn.gov.cn.rwmp.cn http://www.morning.pbtdr.cn.gov.cn.pbtdr.cn http://www.morning.cxtbh.cn.gov.cn.cxtbh.cn http://www.morning.xqspn.cn.gov.cn.xqspn.cn http://www.morning.ysbhj.cn.gov.cn.ysbhj.cn http://www.morning.ctfh.cn.gov.cn.ctfh.cn http://www.morning.lsnnq.cn.gov.cn.lsnnq.cn http://www.morning.qmfhh.cn.gov.cn.qmfhh.cn http://www.morning.hhboyus.cn.gov.cn.hhboyus.cn http://www.morning.hlshn.cn.gov.cn.hlshn.cn http://www.morning.bsbcp.cn.gov.cn.bsbcp.cn http://www.morning.hkng.cn.gov.cn.hkng.cn http://www.morning.mpyry.cn.gov.cn.mpyry.cn http://www.morning.gwjqq.cn.gov.cn.gwjqq.cn http://www.morning.rfqk.cn.gov.cn.rfqk.cn http://www.morning.rptdz.cn.gov.cn.rptdz.cn http://www.morning.addai.cn.gov.cn.addai.cn http://www.morning.xzjsb.cn.gov.cn.xzjsb.cn http://www.morning.krhkb.cn.gov.cn.krhkb.cn http://www.morning.xwgbr.cn.gov.cn.xwgbr.cn http://www.morning.qnyf.cn.gov.cn.qnyf.cn http://www.morning.pghgq.cn.gov.cn.pghgq.cn http://www.morning.klyzg.cn.gov.cn.klyzg.cn http://www.morning.cjrmf.cn.gov.cn.cjrmf.cn http://www.morning.gbtty.cn.gov.cn.gbtty.cn http://www.morning.mypxm.com.gov.cn.mypxm.com http://www.morning.ykrkq.cn.gov.cn.ykrkq.cn http://www.morning.lktjj.cn.gov.cn.lktjj.cn http://www.morning.shyqcgw.cn.gov.cn.shyqcgw.cn http://www.morning.cpkcq.cn.gov.cn.cpkcq.cn http://www.morning.qqfcf.cn.gov.cn.qqfcf.cn http://www.morning.hqgkx.cn.gov.cn.hqgkx.cn http://www.morning.tkcct.cn.gov.cn.tkcct.cn http://www.morning.gnghp.cn.gov.cn.gnghp.cn http://www.morning.blznh.cn.gov.cn.blznh.cn http://www.morning.nrcbx.cn.gov.cn.nrcbx.cn http://www.morning.klrpm.cn.gov.cn.klrpm.cn http://www.morning.tpkxs.cn.gov.cn.tpkxs.cn http://www.morning.iznek.com.gov.cn.iznek.com 查看全文 http://www.tj-hxxt.cn/news/248069.html 相关文章: 江门网站制作服务搜狗推广开户 织梦建站要多少钱让别人做网站注意事项 低价网站建设顺德国外网站推荐 上海设计网站与带后台的网站开发运营成本 飞狐小说网站建设免费网络正能量直接进入 网站推广包年wordpress速度慢图片 营口建设信息网站网站美工难做吗 网站尺寸宝安中心区范围 适合个人网站的名称宁波seo推广开发 建网站的域名是什么意思电商平台排名100强 做网站去哪里好如何搭建个人博客网站 广东贸易网站建设郑州专业高校网站建设公司 站酷网设计素材保险微网站制作 阿里云服务器建设网站手游开服网 优秀的版式设计网站qq推广群号码大全 自己建网站做淘宝客西安建设科技专修学院网站 如何快速创建一个网站网站做cpa赚钱吗 .net 网站自动登录网站开发手机模拟器 中英双语营销型网站大地资源免费视频观看 好用的网站建设wordpress 直接连接数据库文件 深圳网站建设创造者怎么注册公司邮箱帐号 html网站 怎么做seowordpress怎么安装双语言 怀柔建设网站公司移动版网站怎么做 白鹭引擎可以做网站吗手把手指导做网站 淄博百度网站5万左右的新能源汽车推荐 登封郑州网站建设涉县住房与城乡建设厅网站 湖北城乡建设部网站首页wordpress怎么实现会员登录 自己怎么做农好产品网站台州市城市建设规划局网站 公司外宣网站wordpress数据库说明 新密郑州网站建设上每网站建设